[ 
https://issues.apache.org/jira/browse/CXF-7145?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Freeman Fang reassigned CXF-7145:
---------------------------------

    Assignee: Freeman Fang

> synchronized store and getMessages of JmsPullPoint would cause deadlock
> -----------------------------------------------------------------------
>
>                 Key: CXF-7145
>                 URL: https://issues.apache.org/jira/browse/CXF-7145
>             Project: CXF
>          Issue Type: Bug
>          Components: Services
>            Reporter: Freeman Fang
>            Assignee: Freeman Fang
>
> The JmsPullPoint would be accessed by both the producer client and consumer 
> client, currently the whole store(used by producer) and getMessages(used by 
> consumer) method was synchronized.  For some flow control scenario[1], the 
> {code}
> producer.send(message);
> {code}
> in store method would be blocked if the jms queue exceed some certain size, 
> in this case the getMessages method never get chance to be invoked to 
> decrease the queue size which cause deadlock.
> Actually in the methods only the session is critical resource which should be 
> synchronized, so we should synchronize the session only to avoid this deadlock
> [1]http://activemq.apache.org/producer-flow-control.html



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

Reply via email to