Experiment benchmarks catalog paused cuts findings - kmosoti/FabricO11y GitHub Wiki
Historical report imported 2026-10-10 from
docs/experiments/benchmarks/catalog-paused-cuts-findings.md. Original SHA-256:a251e6b1766fea30ca8dc476525d69071a8d90c6ee907e5b1154e32a31449300. Measurements and outcomes retain their stated revisions. Links and local environment labels are normalized;$FABRIC_DATAis the mounted experiment drive. See evidence policy.
Paused publication/checkpoint and retained-reader findings
Status: registered selected cut fixture passed; no general race proof.
Protocol (local checkout reference docs/experiments/benchmarks/catalog-paused-cuts-protocol.md; not present at origin/main),
receipt (local evidence omitted from stage),
test transcript (local evidence omitted from stage)
and oracle/child artifacts (local evidence omitted from stage)
identify source, commands, scope and outcomes. Root ran this workload; no new
workload was executed for the artifact audit or this note.
Exact selector:
paused_publication_and_checkpoint_preserve_shared_reader_coverage_and_gone,
target catalog_interleavings, with --exact --test-threads=1 --nocapture.
Cargo exit 0, coordinator duration 36.550010947 seconds.
Read-only audit found 345 numbered calls, all expected pass, oracle exit 0 and
passed=true: 30 fresh pending baseline calls plus 315 calls spanning seven
stages, three retained reader variants and 15 queries per stage/variant.
Variants were Scan, clone-metadata Walk and shared-metadata Walk. Stages:
pending primed, builder stopped at manifest sync, published before checkpoint,
Store stopped at checkpoint sync, after reclaim, all Segments before retention,
and retained current history with reader objects still alive.
Owned child receipts explicitly record build exit 0 and checkpoint exit 0.
Stderr records actual FABRIC_INJECTION op=sync at first matching owned
.building-00000000000000000001/manifest.json and state/streams.json.tmp.
The parent required stopped children and these markers before querying, then
resumed each and required successful finite exit. Those are selected real writer/
reader schedules, beyond a synthetic final-state model.
Passing Rust assertions establish pending visibility before publication, journal presence at the checkpoint cut, actual reclaim after resume, retained Segment 5 after age eviction and Gone for all three old continuations while History objects remain alive. The full-chain oracle independently checked expected rows and envelopes. Gone/child/process assertions are not separate oracle invocations. No lease or file-pinning guarantee follows from the shared metadata variant.
Whole-job cgroup peak 970,100,736 bytes (about 925.1 MiB), sampled scratch 19,936,355 bytes, evidence 19,983,255 bytes, zero swap and no OOM events. Successful scratch removed; no descendants required coordinator termination. These totals include compilation/graders/page cache; sampled scratch may miss transients. No product memory bound or concurrent throughput comparison follows.
The separate discovery-gap defect was still reproduced despite these passing cuts: a paused writer stabilizes its state and does not exercise publication/ reclaim between two reader discovery steps. Its preserved failure and separately verified candidate repair are recorded in discovery findings. Mid-read deletion, arbitrary schedules, physical power loss, malformed source replacement and partial-table oracle semantics remain outside this result.