GNU bug report logs -
#62542
coreutils-9.2: Failing tests on Adélie Linux
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 62542 in the body.
You can then email your comments to 62542 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-coreutils <at> gnu.org
:
bug#62542
; Package
coreutils
.
(Thu, 30 Mar 2023 11:47:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
"A. Wilcox" <AWilcox <at> Wilcox-Tech.com>
:
New bug report received and forwarded. Copy sent to
bug-coreutils <at> gnu.org
.
(Thu, 30 Mar 2023 11:47:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (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)]
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#62542
; Package
coreutils
.
(Thu, 30 Mar 2023 14:49:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 62542 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
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.
>
>
> 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 & }
[csplit-vm-test.patch (text/x-patch, attachment)]
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#62542
; Package
coreutils
.
(Fri, 31 Mar 2023 06:53:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 62542 <at> debbugs.gnu.org (full text, mbox):
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.
Best,
-A.
Reply sent
to
Pádraig Brady <P <at> draigBrady.com>
:
You have taken responsibility.
(Fri, 31 Mar 2023 11:02:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
"A. Wilcox" <AWilcox <at> Wilcox-Tech.com>
:
bug acknowledged by developer.
(Fri, 31 Mar 2023 11:02:02 GMT)
Full text and
rfc822 format available.
Message #16 received at 62542-done <at> debbugs.gnu.org (full text, mbox):
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
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 28 Apr 2023 11:24:11 GMT)
Full text and
rfc822 format available.
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.