Skip to main content

Module operation

Module operation 

Source
Expand description

Handle execution of database operations and transactions.

Modules§

hooks
Commit hooks for executing custom logic before and after transaction commits.

Structs§

BisectOutcomes
The result of a completed search: one outcome per input item, plus what it cost.
BisectSearch
Drives a bisect over n items: which range to probe next, and what each verdict means for the ranges still outstanding.
DbOp
Default return type of the derived EsRepo::begin_op().
DbOpWithTime
Equivileant of DbOp just that the time is guaranteed to be cached.
HookSlot
Where a released SavepointOp’s staged commit hooks fold into.
OpWithTime
Wrapper that guarantees time is available, borrowing the underlying operation.
SavepointOp
An AtomicOperation scoped to a database SAVEPOINT inside a parent DbOp or another SavepointOp.
TransientLimitExceeded
The transient allowance ran out: the same range kept failing on contention.
TransientPolicy
Which probe failures are transient, and how many re-probes they may buy.

Enums§

BisectBudget
How many probes a bisect may spend before giving up on the ranges it has not yet resolved.
ItemOutcome
One input item’s resolution. Positionally aligned with the input slice.
ProbeVerdict
What a probe over one range turned out to be.

Constants§

DEFAULT_MAX_TRANSIENT_RETRIES
How many times a transiently-failed range may be re-probed before the search is abandoned.

Traits§

AtomicOperation
Trait to signify we can make multiple consistent database roundtrips.
AtomicOperationWithTime
BatchIsolation
Batch isolation for every AtomicOperation.
SavepointOperation
Savepoints for every AtomicOperation, derived rather than hand-written.

Functions§

is_retryable_conflict
retryable_conflict_code as a predicate.
retryable_conflict_code
The Postgres sqlstate of a failure that says nothing about the statement that hit it, or None.