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

[PATCH v2 1/2] t4205: compare huge output without diff

From
Tamir Duberstein <tamird@gmail.com>
Date
Sep 25, 2026, 16:35 UTC
Message-ID
<20260925-ci-large-test-resources-v2-1-f632cf319756@gmail.com>
In-Reply-To
<20260925-ci-large-test-resources-v2-0-f632cf319756@gmail.com>

The huge-commit test compares output containing a line larger than 2 GiB. For two identical files containing 2,147,483,649 "1" bytes followed by "0\n", GNU diffutils 3.8 on Linux arm64 gives these measurements:

  Command               Mean +/- stddev       Maximum RSS (KiB)
  diff -u expect actual  5.276 +/- 0.572 s              4199924
  cmp expect actual      0.506 +/- 0.099 s                 1264

The test needs only an equality check. Use test_cmp_bin, which runs cmp, to compare the output byte for byte with less time and memory.

Assisted-by: LLM
Signed-off-by: Tamir Duberstein <tamird@gmail.com>
---
 t/t4205-log-pretty-formats.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/t/t4205-log-pretty-formats.sh b/t/t4205-log-pretty-formats.sh
index 4be5c51489..01b97c8888 100755
--- a/t/t4205-log-pretty-formats.sh
+++ b/t/t4205-log-pretty-formats.sh
@@ -1189,7 +1189,7 @@ test_expect_success EXPENSIVE,SIZE_T_IS_64BIT 'set up huge commit' '
 test_expect_success EXPENSIVE,SIZE_T_IS_64BIT 'log --pretty with huge commit message' '
 	git log -1 --format="%B%<(1)%x30" $huge_commit >actual &&
 	echo 0 >>expect &&
-	test_cmp expect actual
+	test_cmp_bin expect actual
 '
 
 test_expect_success EXPENSIVE,SIZE_T_IS_64BIT 'log --pretty with huge commit message does not cause allocation failure' '
-- 
2.56.0.rc2.815.g5b995412e4.frankengit
Previous: Tamir DubersteinNext: Patrick Steinhardt
Message 13 of 25 in “ci: reduce pressure from large test fixtures”
  1. 0/2 ci: reduce pressure from large test fixturesTamir Duberstein, Sep 23, 2026
  2. 1/2 t4205: compare huge output without diffTamir Duberstein, Sep 23, 2026
  3. Patrick SteinhardtSep 24, 2026
  4. Tamir DubersteinSep 24, 2026
  5. Jeff KingSep 25, 2026
  6. Junio C HamanoSep 25, 2026
  7. Patrick SteinhardtSep 28, 2026
  8. 2/2 ci: match Linux jobs to available CPUsTamir Duberstein, Sep 23, 2026
  9. Patrick SteinhardtSep 24, 2026
  10. Tamir DubersteinSep 25, 2026
  11. Tamir DubersteinSep 23, 2026
  12. 0/2 ci: use cmp and align job-count selectionTamir Duberstein, Sep 25, 2026
  13. 1/2 t4205: compare huge output without diffTamir Duberstein, Sep 25, 2026
  14. Patrick SteinhardtSep 28, 2026
  15. 2/2 ci: align job counts across CI providersTamir Duberstein, Sep 25, 2026
  16. Patrick SteinhardtSep 28, 2026
  17. Tamir DubersteinSep 28, 2026
  18. Patrick SteinhardtSep 28, 2026
  19. 0/2 ci: use cmp and align job-count selectionTamir Duberstein, Sep 30, 2026
  20. 1/2 t4205: compare huge output without diffTamir Duberstein, Sep 30, 2026
  21. 2/2 ci: use twice the CPU count on both providersTamir Duberstein, Sep 30, 2026
  22. Patrick SteinhardtSep 30, 2026
  23. Patrick SteinhardtSep 30, 2026
  24. Tamir DubersteinSep 30, 2026
  25. Junio C HamanoSep 30, 2026

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.