Subject: bug#18838: closed (Re: bug#18838: zsh test suite failures, possibly due to 'noatime' mount flag)

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 26 Jun 2021 01:57:01 +0000

Your bug report

#18838: zsh test suite failures, possibly due to 'noatime' mount flag

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
18838: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18838
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#18838: zsh test suite failures, possibly due to 'noatime' mount flag
From: Maxim Cournoyer <[email-masked]>
To: Vincent Legoll <[email-masked]>, "Mark H. Weaver" <[email-masked]>
Cc: [email-masked]
Date: Fri, 25 Jun 2021 21:56:12 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,

Maxim Cournoyer <[email-masked]> writes:

> Hello,
>
> Vincent Legoll <[email-masked]> writes:
>
>> Is this still happening?
>>
>> I searched a bit on ci.guix.gnu.org...
>>
>> We have a failure on 5.8 armhf (already present on 5.7.1 version)
>> but it looks like it is a different set of tests that is failing...
>
> I can't find failures in the raw logs of the last CI failures for
> zsh-5.8, but testing on master with:
>
> ./pre-inst-env guix build --check --system=armhf-linux zsh
>
> I got 2 test failures:
>
> Test ./A01grammar.ztst failed: bad status 1, expected 0 from:
>   - $ZTST_testdir/../Src/zsh -fc "[[ \$0 = \"-$ZTST_testdir/../Src/zsh\" ]]"
> Was testing: `-' precommand modifier
> ./A01grammar.ztst: test failed.
> ./A02alias.ztst: starting.
> This test hangs the shell when it fails...
> ./A02alias.ztst: all tests successful.
> ./A03quoting.ztst: starting.
> ./A03quoting.ztst: all tests successful.
> ./A04redirect.ztst: starting.
> ./A04redirect.ztst: all tests successful.
> ./A05execution.ztst: starting.
> Unable to change MONITOR option
> This test takes 5 seconds to fail...
> Skipping pipe leak test, requires MONITOR option
> This test takes 3 seconds and hangs the shell when it fails...
> ./A05execution.ztst: all tests successful.
> ./A06assign.ztst: starting.
> ./A06assign.ztst: all tests successful.
> ./A07control.ztst: starting.
> ./A07control.ztst: all tests successful.
> ./B01cd.ztst: starting.
> Test ./B01cd.ztst failed: bad status 0, expected 1 from:
>  (unset HOME; ARGV0=sh $ZTST_testdir/../Src/zsh -c cd)
> Was testing: Implicit cd with unset HOME.

That was with QEMU user emulation.  Using overdrive1 (real ARM
hardware), I don't get any failure after multiple builds done via:

GUIX_DAEMON_SOCKET=ssh://overdrive1 guix build zsh \
  --system=aarch64-linux --no-grafts --check --rounds=5

It may be that the problem really has to do with the noatime flag, but
that's a bit too narrow for me to test.  If you can reproduce it again
on 5.8 and determine if noatime is at cause, that would be very helpful.

Closing for now, but feel free to reopen!

Maxim

Subject: zsh test suite failures, possibly due to 'noatime' mount flag
From: Mark H Weaver <[email-masked]>
To: [email-masked]
Date: Sat, 25 Oct 2014 21:22:26 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Twice recently, once on x86_64 and once on i686, zsh has failed its test
suite while being built by hydra.  Here's the output in both cases:

--8<---------------cut here---------------start------------->8---
Test ./C02cond.ztst failed: bad status 1, expected 0 from:
  print -u $ZTST_fd 'This test takes two seconds...'
  sleep 2
  cat unmodified
  touch newnewnew
  if [[ $OSTYPE == "cygwin" ]]; then
    print -u$ZTST_fd "Warning: not testing [[ -N file ]] (not supported on Cygwin)"
    true
  elif [[ "$(find . -prune -fstype nfs 2>/dev/null)" == "." ]]; then
    print -u$ZTST_fd "Warning: not testing [[ -N file ]] (not supported with NFS)"
    true
  elif test -f /etc/mtab && { grep $(df . 2>/dev/null| tail -n1 | awk '{print $1}') /etc/mtab | grep -q noatime; }; then
    print -u$ZTST_fd "Warning: not testing [[ -N file ]] (not supported with noatime file system)"
    true
  else
    [[ -N newnewnew && ! -N unmodified ]]
  fi
Was testing: -N cond
./C02cond.ztst: test failed.
The following may (or may not) help identifying the cause:
  This test can fail on NFS-mounted filesystems as the access and
  modification times are not updated separately.  The test will fail
  on HFS+ (Apple Mac OS X default) filesystems because access times
  are not recorded.  Also, Linux ext3 filesystems may be mounted
  with the noatime option which does not update access times.
  Failures in these cases do not indicate a problem in the shell.
--8<---------------cut here---------------end--------------->8---

I restarted the x86_64 build and it succeeded on the second try.
Now it has failed on i686:

  http://hydra.gnu.org/build/128208

My first guess is that one of our build machines has the 'noatime' mount
option set on its /tmp.

Is there a way to tell from the URL above which build machine was used?

      Mark