git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 5/5] p0004: don't error out if test repo is too small

From
René Scharfe <l.s.r@web.de>
Date
May 13, 2017, 16:03 UTC
Message-ID
<ca844223-bb04-8885-2f33-2c3e9c5a5e3c@web.de>
In-Reply-To
<9b574d73-8dfb-f0b3-dc3e-d593726a8f0e@web.de>

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.s.r@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
Previous: René ScharfeNext: Jeff Hostetler
Message 6 of 7 in “p0004: support being called by t/perf/run”
  1. 0/5 p0004: support being called by t/perf/runRené Scharfe, May 13, 2017
  2. 1/5 p0004: simplify calls of test-lazy-init-name-hashRené Scharfe, May 13, 2017
  3. 2/5 p0004: avoid using pipesRené Scharfe, May 13, 2017
  4. 3/5 p0004: use test_perfRené Scharfe, May 13, 2017
  5. 4/5 p0004: don't abort if multi-threaded is too slowRené Scharfe, May 13, 2017
  6. 5/5 p0004: don't error out if test repo is too smallRené Scharfe, May 13, 2017
  7. Jeff HostetlerMay 15, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.