Skip to content

Disable git auto-gc in benchmark fixtures#19

Merged
ggueret merged 1 commit into
mainfrom
fix-bench-fixtures-gc
Jun 9, 2026
Merged

Disable git auto-gc in benchmark fixtures#19
ggueret merged 1 commit into
mainfrom
fix-bench-fixtures-gc

Conversation

@ggueret

@ggueret ggueret commented Jun 9, 2026

Copy link
Copy Markdown
Owner

Summary

Target the root cause of the intermittent Benchmark failures: a background gc --auto.

Context

Fixture generation runs hundreds of rapid commits, which triggers a background gc --auto. It can prune still-unreachable objects mid-run and corrupt the ODB, surfacing as "invalid object / Error building trees" (commit) or "eof before pack header" (push). The earlier --no-thin (PR #18) only covered the push path. Not reproducible locally, so this is validated by watching the Benchmark job stay green across repeated CI runs.

Changes

  • fixtures.rs: run every fixture git command with -c gc.auto=0 -c maintenance.auto=false.

Fixture generation runs hundreds of rapid commits, triggering a background
gc --auto that can prune still-unreachable objects mid-run and corrupt the
ODB. Seen as "invalid object / Error building trees" on commit and "eof
before pack header" on push. Disable gc.auto and maintenance.auto for all
fixture git commands.
@ggueret ggueret merged commit 26bda85 into main Jun 9, 2026
8 checks passed
@ggueret ggueret deleted the fix-bench-fixtures-gc branch June 9, 2026 19:02
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