MvccVersionChainMut

Trait MvccVersionChainMut 

Source
pub trait MvccVersionChainMut: MvccVersionChain {
    // Required methods
    fn add_uncommitted(&mut self, value: Self::Value, txn_id: TxnId);
    fn commit_version(&mut self, txn_id: TxnId, commit_ts: Timestamp) -> bool;
    fn delete_version(&mut self, txn_id: TxnId, delete_ts: Timestamp) -> bool;
    fn gc(&mut self, min_visible_ts: Timestamp) -> (usize, usize);
}
Expand description

Trait for mutable version chain operations

Required Methods§

Source

fn add_uncommitted(&mut self, value: Self::Value, txn_id: TxnId)

Add a new uncommitted version

Source

fn commit_version(&mut self, txn_id: TxnId, commit_ts: Timestamp) -> bool

Commit a version

Source

fn delete_version(&mut self, txn_id: TxnId, delete_ts: Timestamp) -> bool

Mark the latest visible version as deleted

Source

fn gc(&mut self, min_visible_ts: Timestamp) -> (usize, usize)

Garbage collect versions older than the given timestamp Returns (versions_removed, bytes_freed)

Implementors§