pub struct MemVersionedLog { /* private fields */ }Expand description
An in-memory transaction log with the same per-lease-version merge
semantics as VersionedLog, obtained from a MemLogRegistry. Used by
the mem-backed transactor: fully ephemeral, confined to one process.
Trait Implementations§
Source§impl TransactionLog for MemVersionedLog
impl TransactionLog for MemVersionedLog
Source§fn append(&self, record: &TxRecord) -> Result<(), LogError>
fn append(&self, record: &TxRecord) -> Result<(), LogError>
Durably appends exactly the next transaction. Read more
Source§fn tx_range(
&self,
start: u64,
end: Option<u64>,
) -> Result<Vec<TxRecord>, LogError>
fn tx_range( &self, start: u64, end: Option<u64>, ) -> Result<Vec<TxRecord>, LogError>
Returns records in the half-open transaction range
[start, end). Read moreSource§fn append_async<'life0, 'life1, 'async_trait>(
&'life0 self,
record: &'life1 TxRecord,
) -> Pin<Box<dyn Future<Output = Result<(), LogError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn append_async<'life0, 'life1, 'async_trait>(
&'life0 self,
record: &'life1 TxRecord,
) -> Pin<Box<dyn Future<Output = Result<(), LogError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Durably appends exactly the next transaction without blocking an async
runtime worker. Synchronous logs use
Self::append by default;
storage-backed logs override this method and await their backend. Read moreAuto Trait Implementations§
impl !Freeze for MemVersionedLog
impl RefUnwindSafe for MemVersionedLog
impl Send for MemVersionedLog
impl Sync for MemVersionedLog
impl Unpin for MemVersionedLog
impl UnsafeUnpin for MemVersionedLog
impl UnwindSafe for MemVersionedLog
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