pub struct TransactionLog { /* private fields */ }Expand description
Transaction Log (WAL)
Implementations§
Source§impl TransactionLog
impl TransactionLog
Sourcepub fn in_memory() -> TransactionLog
pub fn in_memory() -> TransactionLog
Create in-memory log (no persistence)
Sourcepub fn log_insert(
&self,
txn_id: u64,
key: Vec<u8>,
value: Vec<u8>,
) -> Result<u64, Error>
pub fn log_insert( &self, txn_id: u64, key: Vec<u8>, value: Vec<u8>, ) -> Result<u64, Error>
Log insert operation
Sourcepub fn log_update(
&self,
txn_id: u64,
key: Vec<u8>,
old_value: Vec<u8>,
new_value: Vec<u8>,
) -> Result<u64, Error>
pub fn log_update( &self, txn_id: u64, key: Vec<u8>, old_value: Vec<u8>, new_value: Vec<u8>, ) -> Result<u64, Error>
Log update operation
Sourcepub fn log_delete(
&self,
txn_id: u64,
key: Vec<u8>,
old_value: Vec<u8>,
) -> Result<u64, Error>
pub fn log_delete( &self, txn_id: u64, key: Vec<u8>, old_value: Vec<u8>, ) -> Result<u64, Error>
Log delete operation
Sourcepub fn get_txn_entries(&self, txn_id: u64) -> Vec<LogEntry>
pub fn get_txn_entries(&self, txn_id: u64) -> Vec<LogEntry>
Get entries for a transaction (for undo)
Sourcepub fn get_entries_since(&self, lsn: u64) -> Vec<LogEntry>
pub fn get_entries_since(&self, lsn: u64) -> Vec<LogEntry>
Get entries since LSN
Sourcepub fn current_lsn(&self) -> u64
pub fn current_lsn(&self) -> u64
Get current LSN
Sourcepub fn last_checkpoint(&self) -> u64
pub fn last_checkpoint(&self) -> u64
Get last checkpoint LSN
Auto Trait Implementations§
impl !Freeze for TransactionLog
impl RefUnwindSafe for TransactionLog
impl Send for TransactionLog
impl Sync for TransactionLog
impl Unpin for TransactionLog
impl UnsafeUnpin for TransactionLog
impl UnwindSafe for TransactionLog
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request