Struct sled::transaction::TransactionalTree [−][src]
pub struct TransactionalTree { /* fields omitted */ }
Expand description
A transaction that will be applied atomically to the Tree.
Implementations
Set a key to a new value
Remove a key
Get the value associated with a key
Atomically apply multiple inserts and removals.
Generate a monotonic ID. Not guaranteed to be
contiguous or idempotent, can produce different values in the
same transaction in case of conflicts.
Written to disk every idgen_persist_interval
operations, followed by a blocking flush. During recovery, we
take the last recovered generated ID and add 2x
the idgen_persist_interval
to it. While persisting, if the
previous persisted counter wasn’t synced to disk yet, we will do
a blocking flush to fsync the latest counter, ensuring
that we will never give out the same counter twice.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for TransactionalTree
impl !Send for TransactionalTree
impl !Sync for TransactionalTree
impl Unpin for TransactionalTree
impl !UnwindSafe for TransactionalTree
Blanket Implementations
Mutably borrows from an owned value. Read more