pub struct PersistentCacheIdentity {
pub table_id: u64,
pub schema_id: u64,
pub logical_generation: u64,
}Expand description
Stable identity bound to a persisted cache frame (REM-002 §18.1). The
loader compares the on-disk frame header against this identity and rejects
the entry on any mismatch. The logical_generation is the durable table
epoch (Table::current_epoch().0) — never a process-local counter — so a
valid frame from an older logical state cannot be served after a commit
has advanced the epoch. Persistent cache frames are valid only for the
exact logical table generation: a frame from a future generation
(backup/PITR restore, manual _rcache copy, partial filesystem rollback)
can contain rows that do not exist in the restored table and is rejected
with the same GenerationMismatch as an older frame.
Fields§
§table_id: u64§schema_id: u64§logical_generation: u64Trait Implementations§
Source§impl Clone for PersistentCacheIdentity
impl Clone for PersistentCacheIdentity
Source§fn clone(&self) -> PersistentCacheIdentity
fn clone(&self) -> PersistentCacheIdentity
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for PersistentCacheIdentity
Source§impl Debug for PersistentCacheIdentity
impl Debug for PersistentCacheIdentity
impl Eq for PersistentCacheIdentity
Source§impl PartialEq for PersistentCacheIdentity
impl PartialEq for PersistentCacheIdentity
impl StructuralPartialEq for PersistentCacheIdentity
Auto Trait Implementations§
impl Freeze for PersistentCacheIdentity
impl RefUnwindSafe for PersistentCacheIdentity
impl Send for PersistentCacheIdentity
impl Sync for PersistentCacheIdentity
impl Unpin for PersistentCacheIdentity
impl UnsafeUnpin for PersistentCacheIdentity
impl UnwindSafe for PersistentCacheIdentity
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