pub struct TxManager<S: WriteSetApplicator> { /* private fields */ }Implementations§
Source§impl<S: WriteSetApplicator> TxManager<S>
impl<S: WriteSetApplicator> TxManager<S>
pub fn new(store: S) -> Self
pub fn new_with_counters( store: S, next_tx: TxId, next_lsn: Lsn, committed_watermark: TxId, ) -> Self
pub fn begin(&self) -> TxId
pub fn snapshot(&self) -> SnapshotId
pub fn with_write_set<F, R>(&self, tx: TxId, f: F) -> Result<R>
pub fn cloned_write_set(&self, tx: TxId) -> Result<WriteSet>
pub fn commit(&self, tx: TxId) -> Result<()>
pub fn commit_with_lsn(&self, tx: TxId) -> Result<Lsn>
pub fn rollback(&self, tx: TxId) -> Result<()>
pub fn store(&self) -> &S
pub fn new_row_id(&self) -> RowId
pub fn current_lsn(&self) -> Lsn
pub fn allocate_ddl_lsn<F, R>(&self, f: F) -> R
pub fn with_commit_lock<F, R>(&self, f: F) -> Rwhere
F: FnOnce() -> R,
Sourcepub fn current_tx_max(&self) -> TxId
pub fn current_tx_max(&self) -> TxId
Returns the highest-committed TxId (the statement-scoped max for user-SQL
bound checks against TXID columns). Reads committed_watermark under SeqCst.
Sourcepub fn peek_next_tx(&self) -> TxId
pub fn peek_next_tx(&self) -> TxId
Returns the next transaction id the allocator will issue (peek, no increment).
Trait Implementations§
Auto Trait Implementations§
impl<S> !Freeze for TxManager<S>
impl<S> !RefUnwindSafe for TxManager<S>
impl<S> Send for TxManager<S>
impl<S> Sync for TxManager<S>
impl<S> Unpin for TxManager<S>where
S: Unpin,
impl<S> UnsafeUnpin for TxManager<S>where
S: UnsafeUnpin,
impl<S> UnwindSafe for TxManager<S>where
S: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more