Struct rocksdb::TransactionOptions
source · [−]pub struct TransactionOptions { /* private fields */ }
Implementations
sourceimpl TransactionOptions
impl TransactionOptions
pub fn new() -> TransactionOptions
pub fn set_skip_prepare(&mut self, skip_prepare: bool)
sourcepub fn set_snapshot(&mut self, snapshot: bool)
pub fn set_snapshot(&mut self, snapshot: bool)
Specifies use snapshot or not.
Default: false.
If a transaction has a snapshot set, the transaction will ensure that
any keys successfully written(or fetched via get_for_update
) have not
been modified outside this transaction since the time the snapshot was
set.
If a snapshot has not been set, the transaction guarantees that keys have
not been modified since the time each key was first written (or fetched via
get_for_update
).
Using snapshot will provide stricter isolation guarantees at the expense of potentially more transaction failures due to conflicts with other writes.
Calling set_snapshot
will not affect the version of Data returned by get
methods.
sourcepub fn set_deadlock_detect(&mut self, deadlock_detect: bool)
pub fn set_deadlock_detect(&mut self, deadlock_detect: bool)
Specifies whether detect deadlock or not.
Setting to true means that before acquiring locks, this transaction will check if doing so will cause a deadlock. If so, it will return with Status::Busy. The user should retry their transaction.
Default: false.
sourcepub fn set_lock_timeout(&mut self, lock_timeout: i64)
pub fn set_lock_timeout(&mut self, lock_timeout: i64)
Specifies the wait timeout in milliseconds when a transaction attempts to lock a key.
If 0, no waiting is done if a lock cannot instantly be acquired.
If negative, transaction lock timeout in TransactionDBOptions
will be used.
Default: -1.
sourcepub fn set_expiration(&mut self, expiration: i64)
pub fn set_expiration(&mut self, expiration: i64)
Specifies expiration duration in milliseconds.
If non-negative, transactions that last longer than this many milliseconds will fail to commit. If not set, a forgotten transaction that is never committed, rolled back, or deleted will never relinquish any locks it holds. This could prevent keys from being by other writers.
Default: -1.
sourcepub fn set_deadlock_detect_depth(&mut self, depth: i64)
pub fn set_deadlock_detect_depth(&mut self, depth: i64)
Specifies the number of traversals to make during deadlock detection.
Default: 50.
sourcepub fn set_max_write_batch_size(&mut self, size: usize)
pub fn set_max_write_batch_size(&mut self, size: usize)
Specifies the maximum number of bytes used for the write batch. 0 means no limit.
Default: 0.
Trait Implementations
sourceimpl Default for TransactionOptions
impl Default for TransactionOptions
sourceimpl Drop for TransactionOptions
impl Drop for TransactionOptions
impl Send for TransactionOptions
impl Sync for TransactionOptions
Auto Trait Implementations
impl RefUnwindSafe for TransactionOptions
impl Unpin for TransactionOptions
impl UnwindSafe for TransactionOptions
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more