pub struct SyncReport {
pub tree: String,
pub no_op: bool,
pub blobs_total: usize,
pub blobs_extracted: usize,
pub blobs_cached: usize,
pub blobs_dirty: usize,
pub nodes: u64,
pub edges: u64,
pub rebuilt_from_foreign_worktree: Option<String>,
}Expand description
A summary of the work a sync performed.
Fields§
§tree: StringHex id of the synced HEAD tree.
no_op: boolWhether the tree was unchanged and nothing was done.
blobs_total: usizeSource files reflected in the graph — one File node per extracted blob.
Derived from the assembled graph (not the raw tree walk) so full and
incremental syncs report the same total for the same tree.
blobs_extracted: usizeBlobs that were extracted (cache misses).
blobs_cached: usizeBlobs served from the cache (cache hits).
blobs_dirty: usizeWorking-tree files whose uncommitted content overrode the committed blob
(the dirty overlay); always zero for a committed-only sync.
nodes: u64Nodes in the store after syncing.
edges: u64Edges in the store after syncing.
rebuilt_from_foreign_worktree: Option<String>The working tree this graph previously described, when it was a different one and the sync therefore rebuilt from scratch rather than trusting the recorded state (issue #330).
None on every ordinary sync. Some(path) is the loud half of the
guarantee: the answer was corrected rather than served, and the caller can
say which tree the store had been holding, so a stale store is never a
silent wrong answer nor an unexplained slow one.
Trait Implementations§
Source§impl Clone for SyncReport
impl Clone for SyncReport
Source§fn clone(&self) -> SyncReport
fn clone(&self) -> SyncReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more