summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRené Scharfe <l.s.r@web.de>2021-10-09 14:39:24 (GMT)
committerJunio C Hamano <gitster@pobox.com>2021-10-11 20:17:58 (GMT)
commitbe79131a537f5f35825c01262b2345097a9d2142 (patch)
tree5e374e1b03efb7d85a4bfb1080e98c17a4e7c8e9
parent225bc32a989d7a22fa6addafd4ce7dcd04675dbf (diff)
downloadgit-be79131a537f5f35825c01262b2345097a9d2142.zip
git-be79131a537f5f35825c01262b2345097a9d2142.tar.gz
git-be79131a537f5f35825c01262b2345097a9d2142.tar.bz2
perf: disable automatic housekeeping
Turn off automatic background maintenance for perf tests by default to avoid interference with performance measurements. Do that by using the new file t/perf/config and using it as the system config file for perf tests. Future tests intended to measure gc performance can override the setting locally or call "git gc" explicitly. This fixes a breakage in p2000 caused by gc automatically emptying the reflog due its fake dates from 2005 being older than 90 days. Helped-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--t/perf/config2
-rw-r--r--t/perf/perf-lib.sh4
2 files changed, 6 insertions, 0 deletions
diff --git a/t/perf/config b/t/perf/config
new file mode 100644
index 0000000..b92768b
--- /dev/null
+++ b/t/perf/config
@@ -0,0 +1,2 @@
+[gc]
+ auto = 0
diff --git a/t/perf/perf-lib.sh b/t/perf/perf-lib.sh
index f5ed092..69ae381 100644
--- a/t/perf/perf-lib.sh
+++ b/t/perf/perf-lib.sh
@@ -27,6 +27,10 @@ TEST_NO_MALLOC_CHECK=t
. ../test-lib.sh
+unset GIT_CONFIG_NOSYSTEM
+GIT_CONFIG_SYSTEM="$TEST_DIRECTORY/perf/config"
+export GIT_CONFIG_SYSTEM
+
if test -n "$GIT_TEST_INSTALLED" -a -z "$PERF_SET_GIT_TEST_INSTALLED"
then
error "Do not use GIT_TEST_INSTALLED with the perf tests.