Skip to main content

Counts

Struct Counts 

Source
pub struct Counts {
Show 54 fields pub dir_opens: u64, pub dir_enumeration_calls: u64, pub dir_entries: u64, pub stats: u64, pub file_opens: u64, pub file_reads: u64, pub bytes_read: u64, pub allocs: u64, pub reallocs: u64, pub frees: u64, pub bytes_allocated: u64, pub upserts: u64, pub parent_resolutions: u64, pub parent_memo_hits: u64, pub rollup_merges: u64, pub control_reads: u64, pub control_refused: u64, pub control_sources_shared: u64, pub entries_allocated: u64, pub baseline_batches: u64, pub baseline_accepted_ops: u64, pub opened_batches: u64, pub opened_accepted_ops: u64, pub public_batches: u64, pub public_accepted_ops: u64, pub ancestry_overlay_inserts: u64, pub ancestry_path_comparisons: u64, pub ancestry_parent_proofs: u64, pub scanner_prepare_us: u64, pub scanner_control_projection_us: u64, pub scanner_reduce_us: u64, pub content_sidecar_read_us: u64, pub content_sidecar_parse_us: u64, pub content_sidecar_candidates_us: u64, pub content_sidecar_apply_us: u64, pub detached_builds: u64, pub detached_entries: u64, pub detached_walk_us: u64, pub detached_finish_us: u64, pub effect_paths: u64, pub effect_path_bytes: u64, pub impact_candidates: u64, pub impact_ancestor_visits: u64, pub impact_retained_dirty_paths: u64, pub impact_all_dirty: u64, pub journal_retained_commits: u64, pub journal_cloned_commits: u64, pub journal_oversized_commits: u64, pub journal_dropped_commits: u64, pub adaptive_calibration_chunks: u64, pub adaptive_calibration_entries: u64, pub adaptive_calibration_work_us: u64, pub adaptive_scale_ups: u64, pub adaptive_policy_undecided: u64,
}
Expand description

Per-layer tallies for a walk, index build, and content pass.

Fields§

§dir_opens: u64

Logical directory-open operations.

§dir_enumeration_calls: u64

Enumeration syscalls in complete successful macOS bulk listings, including the empty terminator.

One successful directory is typically two calls (one data, one EOF), the same multiplicity the Linux portable path pays in getdents64. The portable read_dir path leaves this at 0 because the standard library hides that split. Abandoned bulk attempts before portable fallback are not counted. A later Linux or openat campaign can compare this to dir_opens without another sample.

§dir_entries: u64

Directory entries yielded by enumeration.

§stats: u64

Logical metadata-stat operations.

§file_opens: u64

File-open operations performed by content analysis.

§file_reads: u64

File read calls performed by content analysis.

§bytes_read: u64

Bytes read from files by content analysis.

§allocs: u64

Allocation requests observed by the installed counting allocator.

§reallocs: u64

Reallocation requests observed by the installed counting allocator.

§frees: u64

Deallocations observed by the installed counting allocator.

§bytes_allocated: u64

Bytes requested by allocations and allocation growth.

§upserts: u64

Index upserts applied.

§parent_resolutions: u64

Parent-path resolutions performed for index updates.

§parent_memo_hits: u64

Parent resolutions served by the adjacent-parent memo.

§rollup_merges: u64

Roll-up merge operations.

§control_reads: u64

Control files read from the filesystem.

§control_refused: u64

Control sources a control table refused for one of its limits.

Counted where the table decides, so a re-read of a file it has already refused is not: that batch cannot change the table and is never projected. A warm revalidate of a refused tree therefore reports its reads against no refusals, which is the projection being skipped rather than a refusal being lifted.

§control_sources_shared: u64

Control sources that joined a retained identical content instead of parsing again.

§entries_allocated: u64

Index entries allocated.

§baseline_batches: u64

Successful detached baseline batches arbitrated by the index.

§baseline_accepted_ops: u64

Operations accepted from successful detached baseline batches.

§opened_batches: u64

Successful opened-root batches arbitrated by the index.

§opened_accepted_ops: u64

Operations accepted from successful opened-root batches.

§public_batches: u64

Successful arbitrary public batches arbitrated by the index.

§public_accepted_ops: u64

Operations accepted from successful arbitrary public batches.

§ancestry_overlay_inserts: u64

Path-keyed structural-overlay inserts during ancestry preflight.

§ancestry_path_comparisons: u64

Same-parent path comparisons during ancestry preflight.

§ancestry_parent_proofs: u64

Parent chains proved during ancestry preflight, including memo hits.

§scanner_prepare_us: u64

Wall microseconds spent preparing trusted scanner batches.

§scanner_control_projection_us: u64

Wall microseconds spent projecting controls for trusted scanner batches.

§scanner_reduce_us: u64

Wall microseconds spent reducing prepared scanner batches into the index.

§content_sidecar_read_us: u64

Wall microseconds spent reading the content sidecar image.

§content_sidecar_parse_us: u64

Wall microseconds spent on sidecar integrity and record decode.

§content_sidecar_candidates_us: u64

Wall microseconds spent building the live candidate map for a sidecar restore.

§content_sidecar_apply_us: u64

Wall microseconds spent applying restored records and rebuilding content roll-ups.

§detached_builds: u64

Detached cold scans that selected the directory-group builder.

§detached_entries: u64

Entries consumed by that builder.

§detached_walk_us: u64

Wall microseconds spent walking while the builder consumed directory groups.

§detached_finish_us: u64

Wall microseconds spent in the final directories-only roll-up pass.

§effect_paths: u64

Owned paths retained in exact effective changes.

§effect_path_bytes: u64

Native encoded bytes retained by exact effective-change paths.

§impact_candidates: u64

Change and state paths considered for bounded impact derivation.

§impact_ancestor_visits: u64

Path ancestors visited while deriving bounded impact.

§impact_retained_dirty_paths: u64

Dirty paths retained in completed bounded impacts.

§impact_all_dirty: u64

Impact derivations that crossed the dirty-path bound.

§journal_retained_commits: u64

Exact commits retained in the bounded journal.

§journal_cloned_commits: u64

Exact commits cloned for attempted journal retention.

§journal_oversized_commits: u64

Exact commits rejected because one commit exceeded journal capacity.

§journal_dropped_commits: u64

Older exact commits dropped to admit a new retained commit.

§adaptive_calibration_chunks: u64

Chunk releases folded into an automatic scan’s worker-scaling calibration.

§adaptive_calibration_entries: u64

Entries folded into that calibration before it reached a decision.

§adaptive_calibration_work_us: u64

Worker time, in microseconds, folded into that calibration.

Microseconds rather than nanoseconds because the decision threshold is expressed per entry in microseconds, and a nanosecond total over a multi-million-entry walk is large enough to make the row hard to read.

§adaptive_scale_ups: u64

Reserve-pool expansions an automatic scan actually performed.

§adaptive_policy_undecided: u64

Walks that ended while their scaling calibration was still undecided.

A walk shorter than the calibration window never observes enough entries to decide, so its worker policy is unobservable rather than merely unchanged. That is the distinction crate::scan fails closed on, and it must not read as a decision to hold.

Implementations§

Source§

impl Counts

Source

pub fn rows(&self) -> Vec<(&'static str, &'static str, u64)>

Every counter as (group, label, value), in report order.

Source

pub fn is_empty(&self) -> bool

Whether every counter is zero.

Source

pub fn per(&self, denominator: u64) -> Vec<(&'static str, &'static str, f64)>

Per-event ratios against a denominator, in report order.

Trait Implementations§

Source§

impl Clone for Counts

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for Counts

Source§

impl Debug for Counts

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Counts

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Eq for Counts

Source§

impl PartialEq for Counts

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Counts

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.