Artifact b04119b2679887c6705ed4831899ca1911ca20afe0bac865022ac8b7ad879194:
- File
src/sync.zig
-
2026-07-17 13:43:27
— part of check-in
[d91a3cfe42]
on branch clone-w4
— Skip the receive-side inflate for full-form clone content
The clone/sync receive path inflated every stored cfile container to prove the RFC1950 stream was intact (§3.9), then threw the result away: the store keeps the container verbatim and reconstructs lazily, and the persist commit hook runs the §7.7 integrity check on the reconstructed bytes. For the full form that inflate was pure waste. Move the decode into the delta branch (which genuinely needs the plaintext to reconstruct) so a full-form cfile is interned and retained without inflating.
Retaining an unvalidated container means a held artifact is no longer guaranteed reconstructable: content() can be null for a corrupt wire-backed container, so held() no longer implies content(). Reconcile the consumers that assumed it did. The pull .raw delta basis and the push upload path both degrade gracefully (round abort / silent skip) instead of tripping an unreachable or assert on hostile input; the read/derivation path keeps the decompression-bomb cap, and the eager clone-end image treats a corrupt container as an error.
Cuts clone peak RSS ~13% (651 -> 568 MB) on the fossil corpus by dropping the discarded plaintext allocation. Instruction count and wall are flat, since full-form cfiles are the minority of clone content. 1538 tests pass; fossil interop smoke green. (user: dmestas, size: 306538) [annotate] [blame] [check-ins using]
- 2026-07-17 13:46:04 — part of check-in [19af0f2de7] on branch trunk — Merge clone-w4: skip the receive-side inflate for full-form clone content, cutting clone peak RSS ~13% (651 -> 568 MB). Reconciles held()/content() across the pull .raw basis and push upload paths so a corrupt wire-backed container degrades gracefully instead of tripping an unreachable. 1538 tests pass; fossil interop smoke green. (user: dmestas, size: 306538) [annotate] [blame] [check-ins using]
-
2026-07-17 13:43:27
— part of check-in
[d91a3cfe42]
on branch clone-w4
— Skip the receive-side inflate for full-form clone content