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

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

From
Patrick Steinhardt <ps@pks.im>
Date
Sep 24, 2026, 06:13 UTC
Message-ID
<arS_l1hPIr7I2Gn-@pks.im>
In-Reply-To
<20260923-ci-large-test-resources-v1-1-c28416d59475@gmail.com>
On Wed, Sep 23, 2026 at 01:13:28PM -0400, Tamir Duberstein wrote:
> The huge-commit test compares two files with a line larger than 2 GiB.
> In Linux GitHub Actions jobs, git log produces its huge output but
> its subsequent diff process is killed with SIGKILL.
I've never seen that failure before. Do you maybe have a link to it?
> Use test_cmp_bin to compare the output byte for byte without constructing
> a line-oriented diff. Remove the two large files after a successful
> comparison, releasing more than 4 GiB before subsequent tests.

It would be great to back up the claim that test_cmp_bin is better than test_cmp, e.g. by comparing peak RSS and its runtime.

Show 17 quoted lines
> Signed-off-by: Tamir Duberstein <tamird@gmail.com>
> ---
>  t/t4205-log-pretty-formats.sh | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/t/t4205-log-pretty-formats.sh b/t/t4205-log-pretty-formats.sh
> index 4be5c51489..6279a7e9bc 100755
> --- a/t/t4205-log-pretty-formats.sh
> +++ b/t/t4205-log-pretty-formats.sh
> @@ -1189,7 +1189,8 @@ 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 &&
> +	rm expect actual
>  '

Hm. Sure, releasing these files isn't a bad idea by itself. But we rewrite "expect" in the next test anyway, and "actual" will be rewritten two tests further down. So does it really buy us that much...?

Patrick
Previous: Tamir DubersteinNext: Tamir Duberstein
Message 3 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.