pagedb 0.1.0-beta.3

Encrypted, portable, embedded page store with B+ tree and segment-file surfaces.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//! Reader stall policy: how the writer reacts when reader pins block
//! reclamation.

/// What to do when an open reader pins resources the writer needs to reclaim.
#[non_exhaustive]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
pub enum ReaderStallPolicy {
    /// Oldest conflicting user reader's next op returns `PagedbError::Aborted`.
    /// Default. Internal readers with `non_abortable = true` are exempt.
    #[default]
    AbortOldest,
    /// New writes return `FreeListExhausted` / `SegmentTombstoneStalled` /
    /// `ReadersPinningTruncatedRange`. Readers continue.
    Reject,
    /// Free-list grows / tombstoned-but-pinned files accumulate. Batch /
    /// analytics workloads only.
    Unbounded,
}