Struct lmdb::RoTransaction[][src]

pub struct RoTransaction<'env> { /* fields omitted */ }

An LMDB read-only transaction.

Implementations

impl<'env> RoTransaction<'env>[src]

pub fn reset(self) -> InactiveTransaction<'env>[src]

Resets the read-only transaction.

Abort the transaction like Transaction::abort, but keep the transaction handle. InactiveTransaction::renew may reuse the handle. This saves allocation overhead if the process will start a new read-only transaction soon, and also locking overhead if EnvironmentFlags::NO_TLS is in use. The reader table lock is released, but the table slot stays tied to its thread or transaction. Reader locks generally don't interfere with writers, but they keep old versions of database pages allocated. Thus they prevent the old pages from being reused when writers commit new data, and so under heavy load the database size may grow much more rapidly than otherwise.

Trait Implementations

impl<'env> Debug for RoTransaction<'env>[src]

impl<'env> Drop for RoTransaction<'env>[src]

impl<'env> Transaction for RoTransaction<'env>[src]

Auto Trait Implementations

impl<'env> RefUnwindSafe for RoTransaction<'env>[src]

impl<'env> !Send for RoTransaction<'env>[src]

impl<'env> !Sync for RoTransaction<'env>[src]

impl<'env> Unpin for RoTransaction<'env>[src]

impl<'env> UnwindSafe for RoTransaction<'env>[src]

Blanket Implementations

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

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

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

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

impl<T, U> Into<U> for T where
    U: From<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.