I am starting following command from a bash script (arguments omitted for simplicity)
avconv | sox | nc
avconv | sox | nc
I am starting about 150 such commands on the same box at the same time.
The last ncnc command sends the stream to another host. When that host dies, ncnc dies but avconvavconv and soxsox can stay alive. When I then killall soxkillall sox in this situation, avconvavconv stays alive.
Should there not be a sigpipesigpipe?
When I execute the bash script manually and ncnc dies, the other two processes die too. But not when I start many such scripts .
Is it possible that sigpipesigpipe does not work when pipe buffers are full or the system is otherwise highly contended? How can I work around it?
Thanks