cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Freeman Fang (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (CXF-7145) synchronized store and getMessages of JmsPullPoint would cause deadlock
Date Wed, 23 Nov 2016 02:39:58 GMT

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

Freeman Fang resolved CXF-7145.
-------------------------------
       Resolution: Fixed
    Fix Version/s: 3.1.9
                   3.2.0

> 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
>             Fix For: 3.2.0, 3.1.9
>
>
> 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 init and reset 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)

Mime
View raw message