Repository navigation
engine-package test: stub include dir carries the header the seqlock overlay patches - #1859
Merged
swapnilpaliwal-sd merged 2 commits intoOct 7, 2026
Conversation
…ock overlay patches The parallel-solve change gave run-souffle.sh a header overlay (souffle_overlay) that copies the install's include dir, seds the write-entry RMWs in souffle/utility/ParallelUtil.h to seq_cst, and refuses an include dir without that header — no unpatched cache entry may pass for a patched one. The engine-package test's stub include dir carried only CompiledSouffle.h, so every stubbed --prepare died at the overlay and the java suite failed on any branch, parser-only PRs included. The stub now ships a ParallelUtil.h with the acquire RMWs, as a real install's headers do, and the test asserts the prepare leaves the patched overlay (seq_cst present, acquire gone) in the cache — so a prepare that silently skipped the patch would fail too. Reproduced red on the branch tip (5 failures, the ones CI shows), green after the change. Co-authored-by: axiomcode-bot[bot] <334110751+axiomcode-bot[bot]@users.noreply.github.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
swapnilpaliwal-sd
requested review from
JaredHLZhang,
Whua689 and
suyashpaliwal26
as code owners
October 7, 2026 20:13
…pare and the run disagree The parallel solve probes c++ for OpenMP before every invocation. Under this test the prepare runs with a stub c++ (the probe's compile is counted and, on linux, fails at chmod of /dev/null, so prepare caches the serial name) while the run after it sees the real c++ (the probe succeeds, so it looks for the -par name): the run cannot find the binary prepare just built, and the probe's extra c++ calls break every compile count. That is a harness artifact — a real prepare and a real run share one c++ — so the flavor is pinned serial for the whole test: what is under test is packaging and caching, not the solve. Control: with AXIOM_SOLVE_PARALLEL=1 forced, the test reproduces CI's four failures on darwin too; pinned, it is green on both. Co-authored-by: axiomcode-bot[bot] <334110751+axiomcode-bot[bot]@users.noreply.github.com> Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Fixes the java suite failing on every PR into this branch (e.g. #1858, a parser-only PR) at the
engine-packagetest:prepare failed: ❌ could not prepare the patched soufflé headers (seqlock fix), with four more failures cascading from it.Why
The parallel-solve change gave
run-souffle.sha header overlay (souffle_overlay) that copies the install's include dir, rewrites the write-entry RMWs insouffle/utility/ParallelUtil.htoseq_cst, and hard-refuses an include dir without that header — by design, so no unpatched cache entry passes for a patched one. The engine-package test predates it: its stub include dir carried onlyCompiledSouffle.h, so every stubbed--preparenow dies at the overlay. The failure is the base branch's, not any PR's.How
ParallelUtil.hwith the acquire RMWs, as a real install's headers do.seq_cstpresent,acquiregone), so a prepare that silently skipped the patch fails too.Verified
Reproduced red on this branch's tip (the same 5 failures CI shows on #1858), green after the change; the test's own run prints
engine-package: ok.🤖 Generated with Claude Code