pub struct DiffStats {
pub internal_node_skips: u64,
pub leaf_row_skips: u64,
pub internal_nodes_visited: u64,
pub leaves_visited: u64,
pub row_value_compares: u64,
pub cursor_compares: u64,
}Expand description
Work counters for the structural diff — the performance oracle (design
§2.2.2). A fork + N point-mutations diff must show O(N·height) visits and
O(N) value compares; a regression (lost node sharing, or ptr_eq not firing
on some target) surfaces as visits proportional to tree size instead.
Fields§
§internal_node_skips: u64Whole-subtree skips via Rc::ptr_eq on a shared internal node (the
O(divergence) win).
leaf_row_skips: u64Leaf rows skipped via Arc::ptr_eq (identical stored row → no value scan).
internal_nodes_visited: u64Internal nodes actually descended into (NOT skipped).
leaves_visited: u64Leaves actually descended into.
row_value_compares: u64Full-width row value comparisons (full_row_equal) — the O(columns) op.
cursor_compares: u64Cursor comparisons (compare_cursors).
Trait Implementations§
impl Eq for DiffStats
impl StructuralPartialEq for DiffStats
Auto Trait Implementations§
impl Freeze for DiffStats
impl RefUnwindSafe for DiffStats
impl Send for DiffStats
impl Sync for DiffStats
impl Unpin for DiffStats
impl UnsafeUnpin for DiffStats
impl UnwindSafe for DiffStats
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