Skip to content

Fix WAL log preallocation: 10 ^ 9 (XOR=3) -> 1000000000#116

Merged
thawk105 merged 1 commit into
masterfrom
fix/silo-wal-ftruncate-xor
Jun 21, 2026
Merged

Fix WAL log preallocation: 10 ^ 9 (XOR=3) -> 1000000000#116
thawk105 merged 1 commit into
masterfrom
fix/silo-wal-ftruncate-xor

Conversation

@thawk105

Copy link
Copy Markdown
Owner

ftruncate(10 ^ 9) is a bitwise XOR yielding 3 bytes, not the intended 1e9 (1 GB) log preallocation. It also fails gcc-13 -Werror=xor-used-as-pow. Affects silo (ycsb/sbomb/tpcc/bomb) and ss2pl (bomb) under #if WAL.

Found via Izanagi parameter-space full enumeration: the WAL code path is not compiled in default WAL=0 builds, so this stayed latent until WAL=1 was exercised across the optimization-flag hypercube.

`ftruncate(10 ^ 9)` is a bitwise XOR yielding 3 bytes, not the intended
1e9 (1 GB) log preallocation. It also fails gcc-13 -Werror=xor-used-as-pow.
Affects silo (ycsb/sbomb/tpcc/bomb) and ss2pl (bomb) under `#if WAL`.

Found via Izanagi parameter-space full enumeration: the WAL code path is
not compiled in default WAL=0 builds, so this stayed latent until WAL=1
was exercised across the optimization-flag hypercube.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@thawk105 thawk105 merged commit 2574412 into master Jun 21, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant