bug-gawk
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]