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 (Created) (JIRA)" <ji...@apache.org> on 2012/02/01 16:18:58 UTC

[jira] [Created] (AMQ-3694) Blocked/Slow advisory consumers in duplex network connector, eventually breaks request/reply with temps

Blocked/Slow advisory consumers in duplex network connector, eventually breaks request/reply with temps
-------------------------------------------------------------------------------------------------------

                 Key: AMQ-3694
                 URL: https://issues.apache.org/jira/browse/AMQ-3694
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker, Connector
    Affects Versions: 5.5.0
            Reporter: Gary Tully
            Assignee: Gary Tully
             Fix For: 5.6.0


In duplex network connectors, the destinations and temp advisories are not acked. This leads to a buildup of advisory messages on the bridging broker and missing advisories on the target.
In the main, when the numbers of destinations is static and there are no temp queues per roundtrip this goes unnoticed.
If request/reply is used over a network with a temp queue per request (a bit of an anti pattern, they are typically per connection), the problem is quickly visible with the default prefetch. Very quickly advisories for temp queue creation and producer consumers get blocked and communication comes to a halt. 
The root cause is that advisories are not acked in the duplex case so we can only get 750 (.75*prefetch) of them before we block.

symptom{code}javax.jms.JMSException: The destination temp-queue://ID:xxx-xxx-0:7:17 does not exist.
{code} or replies do not get propagated back because the consumer advisory is blocked.

--
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-3694) Blocked/Slow advisory consumers in duplex network connector, eventually breaks request/reply with temps

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

Gary Tully resolved AMQ-3694.
-----------------------------

    Resolution: Fixed

fixed in http://svn.apache.org/viewvc?rev=1239188&view=rev

advisories are now acked in the duplex case, on a .75*prefetch basis like in the non duplex case.
                
> Blocked/Slow advisory consumers in duplex network connector, eventually breaks request/reply with temps
> -------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-3694
>                 URL: https://issues.apache.org/jira/browse/AMQ-3694
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker, Connector
>    Affects Versions: 5.5.0
>            Reporter: Gary Tully
>            Assignee: Gary Tully
>              Labels: activemq, blocking, networkconnector, requestreply, temp
>             Fix For: 5.6.0
>
>
> In duplex network connectors, the destinations and temp advisories are not acked. This leads to a buildup of advisory messages on the bridging broker and missing advisories on the target.
> In the main, when the numbers of destinations is static and there are no temp queues per roundtrip this goes unnoticed.
> If request/reply is used over a network with a temp queue per request (a bit of an anti pattern, they are typically per connection), the problem is quickly visible with the default prefetch. Very quickly advisories for temp queue creation and producer consumers get blocked and communication comes to a halt. 
> The root cause is that advisories are not acked in the duplex case so we can only get 750 (.75*prefetch) of them before we block.
> symptom{code}javax.jms.JMSException: The destination temp-queue://ID:xxx-xxx-0:7:17 does not exist.
> {code} or replies do not get propagated back because the consumer advisory is blocked.

--
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