camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Siddharth Sharma (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CAMEL-10215) EventDrivenPollingConsumer is not thread safe when used with ConsumerCache
Date Mon, 01 Aug 2016 22:44:20 GMT
Siddharth Sharma created CAMEL-10215:
----------------------------------------

             Summary: EventDrivenPollingConsumer is not thread safe when used with ConsumerCache

                 Key: CAMEL-10215
                 URL: https://issues.apache.org/jira/browse/CAMEL-10215
             Project: Camel
          Issue Type: Bug
          Components: camel-core
    Affects Versions: 2.18.0
            Reporter: Siddharth Sharma
             Fix For: 2.18.0


For static endpoints, if DefaultConsumerTemplate#receive() is used,  ConsumerCache will return
the cached instance of PollingConsumer for every thread part of parallel processing of split/aggregate.

Now, if EventDrivenPollingConsumer is used, returning same cache instance causes race condition
in receive and receive(long) as the methods are not thread safe. The ordering of beforePoll,
poll and afterPoll needs to be synchronized, otherwise the consumer might end up being suspended
in afterPoll and the client whose beforePoll couldn't wake up the suspended thread will get
no data.





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message