Fix: Delete stream on write error in consumer
authorDavid Goulet <dgoulet@efficios.com>
Wed, 24 Oct 2012 16:40:59 +0000 (12:40 -0400)
committerDavid Goulet <dgoulet@efficios.com>
Wed, 24 Oct 2012 16:40:59 +0000 (12:40 -0400)
Whenever a write() error occured, both on network or local trace file,
the consumer thread just died considering the error a fatal one.

This commit fixes that by simply deleting the stream, removing it from
the poll set of the thread and freeing it.

Furthermore, on a write() error, a SIGPIPE is usually raised if the FD
is invalid. The consumer is catching this signal but was initiating a
should exit action thus ultimately cleaning all threads. We now still
catch SIGPIPE but don't set the should quit flag so normal cleanup can
be done by the threads.

Signed-off-by: David Goulet <dgoulet@efficios.com>

No differences found
This page took 0.024871 seconds and 4 git commands to generate.