Liking cljdoc? Tell your friends :D

eacl.datomic.integrity

Explicit, offline integrity diagnostics.

Nothing in this namespace runs on EACL's authorization hot path. Callers choose when to pay for a database scan or a schema-version read.

Explicit, offline integrity diagnostics.

Nothing in this namespace runs on EACL's authorization hot path. Callers
choose when to pay for a database scan or a schema-version read.
raw docstring

client-schema-statusclj

(client-schema-status client)

Captures one current client basis and reports whether it carries EACL's certified schema generation.

The shared Acl has no construction-time schema generation to become stale: every read derives schema state from its selected immutable basis and the runtime registry is generation-keyed. Consequently the old :outdated state is intentionally gone. This explicit diagnostic performs one ordinary source acquisition and never runs on an authorization hot path.

Captures one current client basis and reports whether it carries EACL's
certified schema generation.

The shared Acl has no construction-time schema generation to become stale:
every read derives schema state from its selected immutable basis and the
runtime registry is generation-keyed. Consequently the old :outdated state
is intentionally gone. This explicit diagnostic performs one ordinary
source acquisition and never runs on an authorization hot path.
raw docstring

dangling-relationship-halvesclj

(dangling-relationship-halves db)

Returns a lazy sequence of relationship halves whose matching peer half is absent. This is an offline O(number-of-relationships) database scan.

Returns a lazy sequence of relationship halves whose matching peer half is
absent. This is an offline O(number-of-relationships) database scan.
raw docstring

dangling-relationship-reportclj

(dangling-relationship-report db)
(dangling-relationship-report db options)

Scans dangling relationship halves without retaining the scan head.

Returns the total count, counts by half, and at most :sample-size examples (default 20). This is an offline O(number-of-relationships) operation.

Scans dangling relationship halves without retaining the scan head.

Returns the total count, counts by half, and at most `:sample-size` examples
(default 20). This is an offline O(number-of-relationships) operation.
raw docstring

qualifier-proof-inputclj

(qualifier-proof-input snapshot)

Captures offline qualifier, ownership, source, version, and Relation proof inputs.

Captures offline qualifier, ownership, source, version, and Relation proof inputs.
raw docstring

qualifier-reportclj

(qualifier-report snapshot)
(qualifier-report snapshot options)

repair-tx-batchesclj

(repair-tx-batches db)
(repair-tx-batches db {:keys [batch-size] :or {batch-size 1000}})

Returns lazy Datomic transaction batches for all dangling halves visible in db. The default batch size is 1000 dangling halves, keeping repair memory bounded.

Batches are partitioned by HALF rather than by transaction op, so a retraction and the :eacl/relation-version stamp that publishes it always land in the same transaction. Partitioning the ops instead would let a batch boundary fall between them, and the batch holding the bare retraction would change relationship data while announcing nothing.

Each batch also carries the source database's schema-generation guard. A batch prepared before a concurrent relation removal therefore fails instead of recreating the retracted relation eid with only a version stamp.

Returns lazy Datomic transaction batches for all dangling halves visible in
`db`. The default batch size is 1000 dangling halves, keeping repair memory
bounded.

Batches are partitioned by HALF rather than by transaction op, so a
retraction and the :eacl/relation-version stamp that publishes it always land
in the same transaction. Partitioning the ops instead would let a batch
boundary fall between them, and the batch holding the bare retraction would
change relationship data while announcing nothing.

Each batch also carries the source database's schema-generation guard. A
batch prepared before a concurrent relation removal therefore fails instead
of recreating the retracted relation eid with only a version stamp.
raw docstring

repair-tx-dataclj

(repair-tx-data dangling-halves)

Lazily converts dangling-half maps into Datomic retractions.

Each retraction carries an :eacl/relation-version stamp for the relation it clears. Without it a repair would change relationship data while publishing nothing, and any client with result caching enabled would keep serving the ghost grant this repair exists to remove.

Stays lazy: stamps are emitted inline rather than deduplicated up front, which is safe because they are idempotent within a transaction.

Lazily converts dangling-half maps into Datomic retractions.

Each retraction carries an :eacl/relation-version stamp for the relation it
clears. Without it a repair would change relationship data while publishing
nothing, and any client with result caching enabled would keep serving the
ghost grant this repair exists to remove.

Stays lazy: stamps are emitted inline rather than deduplicated up front,
which is safe because they are idempotent within a transaction.
raw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close