Skip to main content

reconciled_ancestors

Function reconciled_ancestors 

Source
pub fn reconciled_ancestors(
    stored: &Revision,
    a: &Record,
    b: &Record,
    cap: usize,
) -> Vec<Revision>
Expand description

Ancestors for a record that reconciles two diverged records a and b: a sync or pull merge result, or a tombstone winner. Both revisions and both ancestor lists are folded (spec §3.4), minus stored, sorted by (counter desc, hash desc) and truncated to cap.

Sync passes a lossless cap (a.ancestors.len() + b.ancestors.len() + 2) and lets each destination store’s plan_put_raw truncate to its own cap on write. Git pull writes the index directly and passes the store’s cap.