gunzip | tar reports broken pipe during OOO build on amd64.
kientzle at freebsd.org
Thu May 7 17:51:52 UTC 2009
>>>> Tue, May 05, 2009 at 07:48:31PM +0200, Alexey Shuvaev wrote:
>>>>> The reason appeared to be the first part of the command
>>>>> "gunzip -c ... | ( tar -xf - ) && touch ..."
>>>>> which exited with non-zero exit status (141) and "touch ..." was not
>>>>> Running the command manually has showed that gunzip was complaining
>>>>> broken pipe (however the archive was extracted successfully).
>>>> Yes, 141 means that SIGPIPE was delivered. This in turn means that
>>>> 'tar -xf -' exited before gunzip had finished its job and gunzip had
>>>> tried to write more data to the pipe.
I finally reproduced this; it seems to only happen with
/bin/csh. It does not happen with /bin/sh or bash.
Also, in /bin/csh, this works:
(gunzip -c ooo_crystal_images-1.tar.gz | tar xf -) && echo OK
and this fails:
gunzip -c ooo_crystal_images-1.tar.gz | (tar xf -) && echo OK
More information about the freebsd-current