Repositories with less than 4000 entries are always handled using a
single thread, causing test-lazy-init-name-hash --multi to error out.
Don't abort the whole test script in that case, but simply skip the
multi-threaded performance check.  We can still use it to compare the
single-threaded speed of different versions in that case.

Signed-off-by: Rene Scharfe <l....@web.de>
---
 t/perf/p0004-lazy-init-name-hash.sh | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/t/perf/p0004-lazy-init-name-hash.sh 
b/t/perf/p0004-lazy-init-name-hash.sh
index 3c2135a185..8de5a98cfc 100755
--- a/t/perf/p0004-lazy-init-name-hash.sh
+++ b/t/perf/p0004-lazy-init-name-hash.sh
@@ -8,10 +8,13 @@ test_checkout_worktree
 
 test_expect_success 'verify both methods build the same hashmaps' '
        test-lazy-init-name-hash --dump --single >out.single &&
-       test-lazy-init-name-hash --dump --multi >out.multi &&
-       sort <out.single >sorted.single &&
-       sort <out.multi >sorted.multi &&
-       test_cmp sorted.single sorted.multi
+       if test-lazy-init-name-hash --dump --multi >out.multi
+       then
+               test_set_prereq REPO_BIG_ENOUGH_FOR_MULTI &&
+               sort <out.single >sorted.single &&
+               sort <out.multi >sorted.multi &&
+               test_cmp sorted.single sorted.multi
+       fi
 '
 
 test_expect_success 'calibrate' '
@@ -46,7 +49,7 @@ test_perf "single-threaded, $desc" "
        test-lazy-init-name-hash --single --count=$count
 "
 
-test_perf "multi-threaded, $desc" "
+test_perf REPO_BIG_ENOUGH_FOR_MULTI "multi-threaded, $desc" "
        test-lazy-init-name-hash --multi --count=$count
 "
 
-- 
2.12.2

Reply via email to