You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Gary Tully (JIRA)" <ji...@apache.org> on 2012/08/21 17:00:38 UTC

[jira] [Created] (AMQ-3985) ActiveMQConnection temp advisory consumer should use asyncDispatch - can cause deadlock with slow consumers

Gary Tully created AMQ-3985:
-------------------------------

             Summary: ActiveMQConnection temp advisory consumer should use asyncDispatch - can cause deadlock with slow consumers
                 Key: AMQ-3985
                 URL: https://issues.apache.org/jira/browse/AMQ-3985
             Project: ActiveMQ
          Issue Type: Bug
          Components: JMS client
    Affects Versions: 5.6.0
            Reporter: Gary Tully
             Fix For: 5.7.0


A slow or blocked connection with the default temp advisory consumer can cause operations that create advisories to block b/c the dispatch is sync to that advisory consumer. If the block occurs after the prefetch is filled the broker stores pending messages and the problem is avoided, but if the block occurs before the prefetch is reached, the dispatch is attempted in the calling thread, which blocks the originating operation. not good.
The solution is to always request async dispatch for the temp advisory consumer in a client connection.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Resolved] (AMQ-3985) ActiveMQConnection temp advisory consumer should use asyncDispatch - can cause deadlock with slow consumers

Posted by "Gary Tully (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AMQ-3985?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gary Tully resolved AMQ-3985.
-----------------------------

    Resolution: Fixed
      Assignee: Gary Tully

fix in http://svn.apache.org/viewvc?rev=1375595&view=rev
                
> ActiveMQConnection temp advisory consumer should use asyncDispatch - can cause deadlock with slow consumers
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-3985
>                 URL: https://issues.apache.org/jira/browse/AMQ-3985
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: JMS client
>    Affects Versions: 5.6.0
>            Reporter: Gary Tully
>            Assignee: Gary Tully
>              Labels: advisory, consumer, deadlock, slow, temp
>             Fix For: 5.7.0
>
>
> A slow or blocked connection with the default temp advisory consumer can cause operations that create advisories to block b/c the dispatch is sync to that advisory consumer. If the block occurs after the prefetch is filled the broker stores pending messages and the problem is avoided, but if the block occurs before the prefetch is reached, the dispatch is attempted in the calling thread, which blocks the originating operation. not good.
> The solution is to always request async dispatch for the temp advisory consumer in a client connection.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira