pub struct RestoreCost {
pub records_before_checkpoint: u64,
pub tail_inputs_replayed: u64,
pub records_after_checkpoint: u64,
pub bytes_read: u64,
}Expand description
What a restore actually read.
A deterministic counter rather than a timer: the claim “restore is bounded by the tail” is about
how much history is touched, and a wall-clock benchmark would measure the machine instead. The
three counters are the three sources a restore can read from, and records_before_checkpoint is
the one that must stay zero whenever a checkpoint exists.
Fields§
§records_before_checkpoint: u64Journal records read from below the checkpoint’s base. Zero with a checkpoint; the whole journal without one.
tail_inputs_replayed: u64Canonical inputs replayed out of the checkpoint’s own bounded tail — (base, through].
records_after_checkpoint: u64Journal records replayed from above through_step_seq.
bytes_read: u64Bytes read across all three, for the byte axis of the tail bound.
Implementations§
Source§impl RestoreCost
impl RestoreCost
pub fn total_transitions(&self) -> u64
Trait Implementations§
Source§impl Clone for RestoreCost
impl Clone for RestoreCost
Source§fn clone(&self) -> RestoreCost
fn clone(&self) -> RestoreCost
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 RestoreCost
Source§impl Debug for RestoreCost
impl Debug for RestoreCost
Source§impl Default for RestoreCost
impl Default for RestoreCost
Source§fn default() -> RestoreCost
fn default() -> RestoreCost
Returns the “default value” for a type. Read more
impl Eq for RestoreCost
Source§impl PartialEq for RestoreCost
impl PartialEq for RestoreCost
impl StructuralPartialEq for RestoreCost
Auto Trait Implementations§
impl Freeze for RestoreCost
impl RefUnwindSafe for RestoreCost
impl Send for RestoreCost
impl Sync for RestoreCost
impl Unpin for RestoreCost
impl UnsafeUnpin for RestoreCost
impl UnwindSafe for RestoreCost
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.