You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2014/10/28 15:16:33 UTC

[jira] [Commented] (QPID-6192) Broker model closes exchanges/queues before connections

    [ https://issues.apache.org/jira/browse/QPID-6192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14186873#comment-14186873 ] 

ASF subversion and git services commented on QPID-6192:
-------------------------------------------------------

Commit 1634884 from [~k-wall] in branch 'qpid/trunk'
[ https://svn.apache.org/r1634884 ]

QPID-6192: [Java Broker] On close, close the connections before exchanges/queues

* Exchanges/Queue now check virtualhost state prior to routing a message to queue/consumer.

> Broker model closes exchanges/queues before connections
> -------------------------------------------------------
>
>                 Key: QPID-6192
>                 URL: https://issues.apache.org/jira/browse/QPID-6192
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: 0.30
>            Reporter: Keith Wall
>            Assignee: Keith Wall
>             Fix For: 0.31
>
>
> The Broker Model closes virtualhost children exchanges/queues before connections.   This allows for the possibility that work done on the connection can fail in surprising ways, for instance, a basic.publish can fail as the exchange object can no longer be found.
> An instance of this problem is described next.
> bq. In our test case, we have a publishing thread, publishing as fast as it can.  The broker is shutdown gracefully.  Sometimes we see a channel.close AMQException "Unknown exchange name" in response to a basic.publish.  Adding logging shows that the Broker is closing and deregistering the exchange before the connection is closed, meaning that the client has the opportunity to get another basic.publish over the wire, to which the broker will respond with the channel.close.  This closes the client's session, meaning after failover, the user is left with a connection with a closed session.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org