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

RE: [Test Breakage 2.46.0-rc0] Test t4135.06 fails on NonStop

From
rsbecker@nexbridge.com <rsbecker@nexbridge.com>
Date
Jul 14, 2024, 13:25 UTC
Message-ID
<001e01dad5f1$43c66100$cb532300$@nexbridge.com>
In-Reply-To
<xmqqv818aezm.fsf@gitster.g>
On Saturday, July 13, 2024 10:23 PM, Junio C Hamano wrote:
Show 20 quoted lines
><rsbecker@nexbridge.com> writes:
>
>> Here is the breakage. This looks like a non-portable dependency on
>> /dev/zero was introduced.
>>
>> expecting success of 4153.6 '--reject overrides --no-reject':
>>         rm -fr .git/rebase-apply &&
>>         git reset --hard &&
>>         git checkout first &&
>>         rm -f file.rej &&
>>
>>         test_must_fail git am --no-reject side1.eml &&
>>         test_path_is_dir .git/rebase-apply &&
>>         test_path_is_missing file.rej &&
>>
>>         test_must_fail git am --retry --reject </dev/zero &&
>>         test_path_is_dir .git/rebase-apply &&
>>         test_path_is_file file.rej
>
>I think you are blaming 53ce2e3f (am: add explicit "--retry" option,
2024-06-06),
>but /dev/zero was in use before that commit.
>
>        diff --git a/t/t4153-am-resume-override-opts.sh
b/t/t4153-am-resume-
>override-opts.sh
>        ...
>        @@ -40,7 +44,7 @@ test_expect_success TTY '--3way overrides
--no-3way' '
>
>                # Applying side1 with am --3way will succeed due to the
threeway-merge.
Show 8 quoted lines
>                # Applying side2 will fail as --3way does not apply to it.
>        -	test_must_fail test_terminal git am --3way </dev/zero &&
>        +	test_must_fail git am --retry --3way &&
>                test_path_is_dir .git/rebase-apply &&
>                test side1 = "$(cat file2)"
>         '
>
>In this hunk, use of /dev/zero goes away; if /dev/zero were a problem, you
would
>have been failing this test already.
>
>        @@ -94,7 +98,7 @@ test_expect_success TTY '--reject overrides
--no-reject' '
Show 10 quoted lines
>                test_path_is_dir .git/rebase-apply &&
>                test_path_is_missing file.rej &&
>
>        -	test_must_fail test_terminal git am --reject </dev/zero &&
>        +	test_must_fail git am --retry --reject </dev/zero &&
>                test_path_is_dir .git/rebase-apply &&
>                test_path_is_file file.rej
>         '
>
>And this hunk uses /dev/zero the same way before and after.  The older use
of
>/dev/zero in these tests were from 852a1710 (am: let command-line options
>override saved options, 2015-08-04), which was part of v2.6.0 that was
tagged in
Show 5 quoted lines
>late Sep 2015.
>
>In short this is nothing new in this release.
>
>Preparing a garbage file that is sufficiently large (like 1kB) and feeding
from that file
>to the commands instead of from /dev/null may be sufficient to reduce the
>dependence of /dev/zero but given that this is ancient, there are many
other uses
>of /dev/zero in the test directory, it does not seem ultra-urgent to
address this, at
>least to me.  Certainly not during the pre-release freeze.
>
>Thanks for a report.

I think the /dev/zero usage was being hidden. We definitely do not have /dev/zero, but I think the prior hung failed anyway, so the test diff not differentiate between the test fail and using /dev/zero. So it looks like --retry. This worked at 2.44.2 and for years before that.

Previous: Junio C Hamano
Message 8 of 8 in “[Test Breakage 2.46.0-rc0] Test t4135.06 fails on NonStop”
  1. rsbecker@nexbridge.comJul 13, 2024
  2. Junio C HamanoJul 14, 2024
  3. Jeff KingJul 14, 2024
  4. rsbecker@nexbridge.comJul 14, 2024
  5. t4153: stop redirecting input from /dev/zeroJeff King, Jul 17, 2024
  6. rsbecker@nexbridge.comJul 17, 2024
  7. Junio C HamanoJul 17, 2024
  8. rsbecker@nexbridge.comJul 14, 2024

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.