pub struct RollbackSegmentHeader {
pub max_size: u32,
pub history_size: u32,
pub slots: Vec<u32>,
}Expand description
Parsed rollback segment header (the page pointed to by RSEG array slots).
Contains the maximum size, history list length, and an array of up to 1024 undo segment page number slots.
Fields§
§max_size: u32Maximum number of undo pages this RSEG can use.
history_size: u32Number of committed transactions in the history list.
slots: Vec<u32>Undo segment page numbers (FIL_NULL = empty slot).
Implementations§
Source§impl RollbackSegmentHeader
impl RollbackSegmentHeader
Sourcepub fn parse(page_data: &[u8]) -> Option<Self>
pub fn parse(page_data: &[u8]) -> Option<Self>
Parse a rollback segment header from a full page buffer.
The RSEG header starts at FIL_PAGE_DATA on the page pointed to by an RSEG array slot.
Sourcepub fn active_slots(&self) -> Vec<u32>
pub fn active_slots(&self) -> Vec<u32>
Return only the active (non-FIL_NULL, non-zero) slot page numbers.
Trait Implementations§
Source§impl Clone for RollbackSegmentHeader
impl Clone for RollbackSegmentHeader
Source§fn clone(&self) -> RollbackSegmentHeader
fn clone(&self) -> RollbackSegmentHeader
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RollbackSegmentHeader
impl Debug for RollbackSegmentHeader
Auto Trait Implementations§
impl Freeze for RollbackSegmentHeader
impl RefUnwindSafe for RollbackSegmentHeader
impl Send for RollbackSegmentHeader
impl Sync for RollbackSegmentHeader
impl Unpin for RollbackSegmentHeader
impl UnsafeUnpin for RollbackSegmentHeader
impl UnwindSafe for RollbackSegmentHeader
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