Skip to content
zit Check-in [c57c16c5cd]
Login

Check-in [c57c16c5cd]

Overview
Comment:crc32: export for the benchmark and the fuzz lane

Both consumers live in their own build roots and cannot reach crc32.zig by path, so the export is forced. Adds the differential fuzz lane against std — the only coverage that can see a self-consistent but numerically shifted implementation, which would orphan every existing .zit file.

The implementation brief prohibited this export, citing repocache as the precedent for unexported leaf modules. That precedent does not apply: repocache has no out-of-module consumer. storestat and repoimage, which do, are both exported. Overridden deliberately.

Timelines: family | ancestors | descendants | both | logstore-index
Files: files | file ages | folders
SHA3-256: c57c16c5cd437a0d735a852808dc4c0c6f35d8c87bdb6988a601d799a1174eb6
User & Date: dmestas on 2026-07-29 13:21:29.298
Other Links: branch diff | manifest | tags
Context
2026-07-29
14:19
merge logstore-index: checksum the store through a vendored crc32

std.hash.Crc32 is byte-at-a-time over one table (~350 MB/s here) and the open-time scan CRCs every payload byte, so it was ~93% of a cold open. Slicing-by-8 in its place: a 416 MB store opens in 292ms against 1.22s, warm reads run 3.3x, the write path 1.5x. Bit-identical by construction, so no format changes and no repository is affected. check-in: 602c2459f2 user: dmestas tags: trunk

13:21
crc32: export for the benchmark and the fuzz lane

Both consumers live in their own build roots and cannot reach crc32.zig by path, so the export is forced. Adds the differential fuzz lane against std — the only coverage that can see a self-consistent but numerically shifted implementation, which would orphan every existing .zit file.

The implementation brief prohibited this export, citing repocache as the precedent for unexported leaf modules. That precedent does not apply: repocache has no out-of-module consumer. storestat and repoimage, which do, are both exported. Overridden deliberately. closed check-in: c57c16c5cd user: dmestas tags: logstore-index

13:19
repocache, bisect, undo: checksum through the vendored crc32

The other three on-disk formats defined in terms of this checksum: the cache image self-checksum, the bisect session trailer, the undo journal trailer. Same swap, same values. check-in: 55d6e7c7bb user: dmestas tags: logstore-index

Changes