[concurrency-interest] Does j.u.c.SynchronousQueue's use of Interrupt interfere with NIO AbstractInterruptibleChannel?

Edward Sargisson esarge at pobox.com
Mon Jun 3 19:43:54 EDT 2013


Hi all,
I've been chasing down issues with Apache Flume and Log4j2. I ~may~ be able
to explain a problem as SynchronousQueue interacting with
AbstractInterruptibleChannel but I'm not convinced my understanding is
sufficient to be certain. I decided it might be worth asking the question
here - if only for my own learning.

The problem[1] appears to be that if a put or a take fail on the
SynchronousQueue in the AvroIpcClient then it causes an interrupt on the
Flume FileChannel thread (which uses NIO FileChannel which inherits from
AbstractInterruptibleChannel).

The docs and code for the NIO channels show that it does not expect to be
interrupted.

Is SynchronousQueue actually interrupting the thread or is the use of
Interrupt in that class doing something else?

Many thanks in advance,
Edward

Links:
[1] https://issues.apache.org/jira/browse/FLUME-2067
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cs.oswego.edu/pipermail/concurrency-interest/attachments/20130603/8c319afc/attachment.html>


More information about the Concurrency-interest mailing list