GNU bug report logs - #25402
Race condition in "colors" test

Previous Next

Package: diffutils;

Reported by: Santiago Vila <sanvila <at> unex.es>

Date: Sun, 8 Jan 2017 22:37:02 UTC

Severity: normal

Merged with 34519, 36488

Full log


View this message in rfc822 format

From: Santiago Vila <sanvila <at> unex.es>
To: 25402 <at> debbugs.gnu.org
Cc: debian.axhn <at> manchmal.in-ulm.de, sanvila <at> unex.es,debian.axhn <at> manchmal.in-ulm.de
Subject: bug#25402: Race condition in "colors" test
Date: Sun, 8 Jan 2017 23:35:08 +0100 (CET)
Hello.

The test suite for diffutils 3.5 has a tendency to fail in our ppc64el
architecture:

https://buildd.debian.org/status/logs.php?pkg=diffutils&ver=1%3A3.5-2&arch=ppc64el

According to Christoph Biedl (Cc:ed), there is a race condition here:

| mkfifo fifo
| printf '%*s-a' 1000000 > a
| head -c 10 < fifo > /dev/null &
+ diff --color=always ---presume-output-tty a b > fifo
| test $? = 141 || fail=1

Quoting Christoph:

> There is a race condition involved, it fails in about three of
> four attempts - but not at all if the test is run under strace.

> A "sleep 0.1" before the diff made the test pass in ten of ten
> attempts. So the reason might indeed be the head command hasn't opened
> fifo yet by the time diff tries to write to it.

For the Debian package, I am going to add a "sleep 1"
(slightly more portable), but Christoph points out that this
should not really be architecture specific.

Thanks.




This bug report was last modified 3 years and 345 days ago.

Previous Next


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