From 70e9dab5266569072855f42d11546ca98a43caa4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Geoffrey=20Gu=C3=A9ret?= Date: Tue, 9 Jun 2026 20:36:30 +0200 Subject: [PATCH] fix(bench): disable git auto-gc in fixture setup 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. --- crates/git-server-bench/src/fixtures.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/crates/git-server-bench/src/fixtures.rs b/crates/git-server-bench/src/fixtures.rs index 27868ce..23fdae1 100644 --- a/crates/git-server-bench/src/fixtures.rs +++ b/crates/git-server-bench/src/fixtures.rs @@ -109,7 +109,11 @@ fn create_fixture( fn run_git(args: &[&str], cwd: Option<&Path>) { let mut cmd = Command::new("git"); - cmd.args(args) + cmd.arg("-c") + .arg("gc.auto=0") + .arg("-c") + .arg("maintenance.auto=false") + .args(args) .env("GIT_AUTHOR_NAME", "Bench") .env("GIT_AUTHOR_EMAIL", "bench@test.com") .env("GIT_COMMITTER_NAME", "Bench")