[][src]Struct pagecache::RecoveryGuard

pub struct RecoveryGuard<'a> { /* fields omitted */ }

Ensures that any operations that are written to disk between the creation of this guard and its destruction will be recovered atomically. When this guard is dropped, it marks in an earlier reservation where the stable tip must be in order to perform recovery. If this is beyond where the system successfully wrote before crashing, then the recovery will stop immediately before any of the atomic batch can be partially recovered.

Must call seal_batch to complete the atomic batch operation.

If this is dropped without calling seal_batch, the complete recovery effect will not occur.

Methods

impl<'a> RecoveryGuard<'a>[src]

pub fn seal_batch(self) -> Result<()>[src]

Writes the last LSN for a batch into an earlier reservation, releasing it.

pub fn lsn(&self) -> Lsn[src]

Returns the LSN representing the beginning of this batch.

Auto Trait Implementations

impl<'a> Unpin for RecoveryGuard<'a>

impl<'a> Sync for RecoveryGuard<'a>

impl<'a> Send for RecoveryGuard<'a>

impl<'a> !UnwindSafe for RecoveryGuard<'a>

impl<'a> !RefUnwindSafe for RecoveryGuard<'a>

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]