[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bug-gawk] intermittent pipeio3 test failures
From: |
Andrew J. Schorr |
Subject: |
Re: [bug-gawk] intermittent pipeio3 test failures |
Date: |
Wed, 27 Nov 2013 17:39:59 -0500 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Hi,
On Wed, Nov 27, 2013 at 04:35:21PM -0500, Andrew J. Schorr wrote:
> FYI, this test is failing intermittently for me in Fedora 19.
> I have not looked closely yet. I will try to figure out what's going on.
>
> ============== _pipeio3 =============
> *** pipeio3.ok 2013-11-27 15:42:20.000000000 -0500
> --- _pipeio3 2013-11-27 16:32:22.344580058 -0500
> ***************
> *** 1,6 ****
> doing first print
> doing first getline
> - sh: 1: cart: not found
> doing second print
> ! gawk: pipeio3.awk:12: fatal: print to "cart" failed (Broken pipe)
> ! EXIT CODE: 2
> --- 1,6 ----
> doing first print
> doing first getline
> doing second print
> ! made it here
> ! ls: write error: Broken pipe
> ! sh: 1: cart: not found
This test is inherently racy. It provides for 2 possible outcomes:
bash-4.2$ head pipeio3.ok*
==> pipeio3.ok <==
doing first print
doing first getline
sh: 1: cart: not found
doing second print
gawk: pipeio3.awk:12: fatal: print to "cart" failed (Broken pipe)
EXIT CODE: 2
==> pipeio3.ok2 <==
doing first print
sh: 1: cart: not found
gawk: pipeio3.awk:6: fatal: print to "cart" failed (Broken pipe)
EXIT CODE: 2
In my testing, I am also seeing:
doing first print
doing first getline
doing second print
made it here
sh: cart: command not found
EXIT CODE: 0
And also:
doing first print
doing first getline
sh: 1: cart: not found
doing second print
gawk: pipeio3.awk:12: fatal: print to "cart" failed (Broken pipe)
ls: write error: Broken pipe
EXIT CODE: 2
And also:
doing first print
doing first getline
doing second print
made it here
ls: write error: Broken pipe
sh: 1: cart: not found
Here is a useful test harness:
bash-4.2$ for i in `seq 1 10000` ; do make pipeio3; [ -e _pipeio3 ] && echo
$i && break; done
Should we retain this test and add 3 more possible solutions, or should we
discard
the test? I'm not sure those 5 are comprehensive.
Regards,
Andy