View Ticket
Not logged in
Ticket UUID: 538ba1e6158d182fcd94dd30efb98a12b831ff29
Title: Test Failure - exec-19.1 - On MacOS
Type: Bug Version: 8,7
Submitter: hypnotoad Created on: 2017-11-07 17:37:49
Subsystem: - New Builtin Commands Assigned To: nobody
Priority: 5 Medium Severity: Minor
Status: Open Last Modified: 2017-11-07 17:37:49
Resolution: None Closed By: nobody
    Closed on:
Description:
Building a fresh checkout of [84de05583b0631640bcb0f697345f4743c74da0b] on MacOS High Sierra using Xcode command line tools and running "make test" produces the following failed test:

==== exec-19.1 exec >> uses O_APPEND FAILED
==== Contents of test case:

    # Note that we have to allow for the current contents of the temporary
    # file, which is why the result is 14 and not 12
    exec /bin/sh -c  {for a in 1 2 3; do sleep 1; echo $a; done} >>$tmpfile &
    exec /bin/sh -c  {for a in 4 5 6; do sleep 1; echo $a >&2; done} 2>>$tmpfile &
    exec /bin/sh -c  {for a in a b c; do sleep 1; echo $a; done} >>$tmpfile &
    exec /bin/sh -c  {for a in d e f; do sleep 1; echo $a >&2; done} 2>>$tmpfile &
    # The above four shell invokations take about 3 seconds to finish, so allow
    # 5s (in case the machine is busy)
    after 5000
    # Check that no bytes have got lost through mixups with overlapping
    # appends, which is only guaranteed to work when we set O_APPEND on the
    # file descriptor in the [exec >>...]
    file size $tmpfile

---- Result was:
24
---- Result should have been (exact matching):
26
==== exec-19.1 FAILED