pub enum PinSource {
TransactionSnapshot,
HistoryRetention,
BackupPitr,
Replication,
ReadGeneration,
OnlineIndexBuild,
}Expand description
The version-retention pin sources of spec §10.3 (S1C-004). A version may be reclaimed only when it is older than the oldest pin of every source.
Variants§
TransactionSnapshot
Oldest active transaction/read snapshot (MVCC readers). Projected from
SnapshotRegistry and the table-local pin set in diagnostics.
HistoryRetention
Configured rolling history-retention window. Projected from
SnapshotRegistry::history_floor in diagnostics.
BackupPitr
Oldest backup / point-in-time-recovery pin.
Replication
Oldest replication-follower requirement.
ReadGeneration
Oldest cursor / immutable read-generation pin.
OnlineIndexBuild
Oldest online index build still reading historical versions.
Implementations§
Trait Implementations§
impl Copy for PinSource
impl Eq for PinSource
Source§impl Ord for PinSource
impl Ord for PinSource
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for PinSource
impl PartialOrd for PinSource
impl StructuralPartialEq for PinSource
Auto Trait Implementations§
impl Freeze for PinSource
impl RefUnwindSafe for PinSource
impl Send for PinSource
impl Sync for PinSource
impl Unpin for PinSource
impl UnsafeUnpin for PinSource
impl UnwindSafe for PinSource
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 more