GNU bug report logs - #62542
coreutils-9.2: Failing tests on Adélie Linux

Previous Next

Package: coreutils;

Reported by: "A. Wilcox" <AWilcox <at> Wilcox-Tech.com>

Date: Thu, 30 Mar 2023 11:47:02 UTC

Severity: normal

Done: Pádraig Brady <P <at> draigBrady.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Pádraig Brady <P <at> draigBrady.com>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#62542: closed (coreutils-9.2: Failing tests on
 Adélie Linux)
Date: Fri, 31 Mar 2023 11:02:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Fri, 31 Mar 2023 12:01:32 +0100
with message-id <75dd0d04-eb12-1c22-156d-02ae3748e718 <at> draigBrady.com>
and subject line Re: bug#62542: coreutils-9.2: Failing tests on Adélie Linux
has caused the debbugs.gnu.org bug report #62542,
regarding coreutils-9.2: Failing tests on Adélie Linux
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
62542: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62542
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: "A. Wilcox" <AWilcox <at> Wilcox-Tech.com>
To: bug-coreutils <at> gnu.org
Subject: coreutils-9.2: Failing tests on Adélie Linux
Date: Thu, 30 Mar 2023 03:20:48 -0500
[Message part 3 (text/plain, inline)]
Hello,

While updating coreutils to 9.2 on Adélie Linux, I’ve run into a few
interesting corner-cases in the test suite.  As a note, our distribution
is using musl as the libc.

1. `tests/misc/csplit-heap.sh` fails when /bin/sh is Bash

I actually saw this on 9.1 as well, but I only saw it on one system and
considered it a fluke since our auto builder infrastructure didn’t see
the issue.  Seeing it again in 9.2 made me look deeper, and it turns out
that when /bin/sh is a symlink to /bin/bash, the test fails with:

./tests/misc/csplit-heap.sh: xmalloc: cannot allocate 16085 bytes

When /bin/sh is a symlink to /bin/dash, the test no longer fails.
However:


2. `tests/misc/tee.sh` fails when /bin/sh is Dash and `make` is run
under Zsh

When running the test suite from my default Zsh environment, and when
/bin/sh is a symlink to /bin/dash, I receive an error when running the
tee test.

If:

- /bin/sh is a symlink to /bin/bash; OR if

- /bin/sh is a symlink to /bin/dash, and
- make is launched from a Bash or Dash shell, *not* a Zsh shell,

Then the test passes.


Both test runs with the respective failures have generated useful log
files, which are attached.  I don’t know if this is actually a bug in
the coreutils test suite, or if the bugs perhaps lie in the shells.

Best,
-A.

--
A. Wilcox (they/them)
SW Engineering: C/C++, DevOps, POSIX
Wilcox Technologies Inc.

[coreutils-9.2-test-failure-csplit-heap.log (application/octet-stream, attachment)]
[coreutils-9.2-test-failure-tee.log (application/octet-stream, attachment)]
[Message part 6 (message/rfc822, inline)]
From: Pádraig Brady <P <at> draigBrady.com>
To: "A. Wilcox" <AWilcox <at> Wilcox-Tech.com>
Cc: 62542-done <at> debbugs.gnu.org
Subject: Re: bug#62542: coreutils-9.2: Failing tests on Adélie Linux
Date: Fri, 31 Mar 2023 12:01:32 +0100
On 31/03/2023 07:27, A. Wilcox wrote:
> On Mar 30, 2023, at 9:48 AM, Pádraig Brady <P <at> draigBrady.com> wrote:
>>
>> On 30/03/2023 09:20, A. Wilcox wrote:
>>> Hello,
>>> While updating coreutils to 9.2 on Adélie Linux, I’ve run into a few
>>> interesting corner-cases in the test suite.  As a note, our distribution
>>> is using musl as the libc.
>>> 1. `tests/misc/csplit-heap.sh` fails when /bin/sh is Bash
>>> I actually saw this on 9.1 as well, but I only saw it on one system and
>>> considered it a fluke since our auto builder infrastructure didn’t see
>>> the issue.  Seeing it again in 9.2 made me look deeper, and it turns out
>>> that when /bin/sh is a symlink to /bin/bash, the test fails with:
>>> ./tests/misc/csplit-heap.sh: xmalloc: cannot allocate 16085 bytes
>>> When /bin/sh is a symlink to /bin/dash, the test no longer fails.
>>> However:
>>
>> The attached should fix that issue.
> 
> 
> Confirmed, this patch fixed it - thank you!
> 
> 
>>
>>> 2. `tests/misc/tee.sh` fails when /bin/sh is Dash and `make` is run
>>> under Zsh
>>> When running the test suite from my default Zsh environment, and when
>>> /bin/sh is a symlink to /bin/dash, I receive an error when running the
>>> tee test.
>>> If:
>>> - /bin/sh is a symlink to /bin/bash; OR if
>>> - /bin/sh is a symlink to /bin/dash, and
>>> - make is launched from a Bash or Dash shell, *not* a Zsh shell,
>>> Then the test passes.
>>
>> This is failing as `yes >fifo` is getting EINTR on your shell.
>> I'm not too sure why that's happening, but it might be
>> due to interactions on the fifo from the previous part of the test.
>>
>> Does the following change avoid the problem for you?
>>
>> cheers,
>> Pádraig
>>
>> diff --git a/tests/misc/tee.sh b/tests/misc/tee.sh
>> index 0b97a9ea3..444cb688a 100755
>> --- a/tests/misc/tee.sh
>> +++ b/tests/misc/tee.sh
>> @@ -99,7 +99,7 @@ dd count=20 bs=100K if=/dev/zero status=none |
>>    dd count=0 oflag=nonblock status=none
>>    tee || { cleanup_; touch tee.fail; }
>> } >fifo
>> -test -f tee.fail && fail=1
>> +test -f tee.fail && fail=1 || cleanup_
>>
>> # Ensure tee honors --output-error modes
>> read_fifo() { timeout 10 dd count=1 if=fifo of=/dev/null status=none & }
> 
> 
> This also fixed the Zsh issue, indeed.

Thanks for the detailed report and retesting.
Pushed those fixes.
Marking this as done.

cheers,
Pádraig



This bug report was last modified 2 years and 54 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.