pub struct WalFramePage {
pub frame_index: usize,
pub page_no: u32,
pub salt1: u32,
pub salt2: u32,
pub is_commit: bool,
pub page: Vec<u8>,
}Expand description
One committed WAL frame’s full page image plus its provenance, exposed by
Database::wal_frame_pages so the deleted-record carver can scan the
uncheckpointed WAL frames the main file does not yet reflect.
The (salt1, salt2, frame_index) triple is the WAL log-sequence identity that
task #55 will formalize: salt1/salt2 pin the checkpoint generation and
frame_index the position within it.
Fields§
§frame_index: usize0-based position of this frame within the -wal file (its LSN ordinal).
page_no: u321-based database page number this frame rewrites.
salt1: u32WAL header salt-1 (checkpoint generation), shared by every live frame.
salt2: u32WAL header salt-2 (checkpoint generation), shared by every live frame.
is_commit: boolWhether this is a COMMIT frame (db_size_after_commit != 0).
page: Vec<u8>The frame’s full page image (page_size bytes).
Trait Implementations§
Source§impl Clone for WalFramePage
impl Clone for WalFramePage
Source§fn clone(&self) -> WalFramePage
fn clone(&self) -> WalFramePage
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WalFramePage
impl Debug for WalFramePage
impl Eq for WalFramePage
Source§impl PartialEq for WalFramePage
impl PartialEq for WalFramePage
Source§fn eq(&self, other: &WalFramePage) -> bool
fn eq(&self, other: &WalFramePage) -> bool
self and other values to be equal, and is used by ==.