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

Robbie Gemmell resolved QPID-6384.
----------------------------------
    Resolution: Fixed

Tested again with trunk existing client, and the new client, all looked well.

> [Java Broker] [AMQP 1.0] unable to recreate a durable subscription after 
> calling unsubscribe
> --------------------------------------------------------------------------------------------
>
>                 Key: QPID-6384
>                 URL: https://issues.apache.org/jira/browse/QPID-6384
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: 0.31
>            Reporter: Robbie Gemmell
>            Assignee: Rob Godfrey
>             Fix For: 0.31
>
>         Attachments: DurSubCloseAndUnsubscribe.java
>
>
> Running the attached class twice (using the trunk Java broker and 'existing' 
> AMQP 1.0 JMS client) results in an exception when recreating the subscription 
> on the second run, with the following stacktrace dumped to the console:
> {noformat}
> 00 53 12 c0 5c 07 a1 05 6d 79 53 75 62 43 41 50 00 
> 50 00 00 53 28 c0 1d 07 a1 08 4d 59 5f 54 4f 50 49 
> 43 52 02 a3 05 6e 65 76 65 72 40 40 40 a3 04 63 6f 
> 70 79 00 53 29 c0 27 01 a1 24 33 34 31 66 36 66 39 
> 34 2d 32 30 66 31 2d 34 33 37 39 2d 61 30 65 62 2d 
> 30 62 39 65 63 66 39 34 32 63 30 66 
> org.apache.qpid.server.util.ConnectionScopedRuntimeException: 
> org.apache.qpid.server.message.MessageSource$ConsumerAccessRefused
>       at 
> org.apache.qpid.server.protocol.v1_0.SendingLink_1_0.<init>(SendingLink_1_0.java:396)
>       at 
> org.apache.qpid.server.protocol.v1_0.Session_1_0.remoteLinkCreation(Session_1_0.java:209)
>       at 
> org.apache.qpid.server.protocol.v1_0.Connection_1_0$2$1.run(Connection_1_0.java:167)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:360)
>       at 
> org.apache.qpid.server.protocol.v1_0.Connection_1_0$2.remoteLinkCreation(Connection_1_0.java:162)
>       at 
> org.apache.qpid.amqp_1_0.transport.SessionEndpoint.receiveAttach(SessionEndpoint.java:300)
>       at 
> org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint.receiveAttach(ConnectionEndpoint.java:633)
>       at 
> org.apache.qpid.amqp_1_0.type.transport.Attach.invoke(Attach.java:352)
>       at 
> org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint.receive(ConnectionEndpoint.java:802)
>       at 
> org.apache.qpid.amqp_1_0.framing.FrameHandler.parse(FrameHandler.java:241)
>       at 
> org.apache.qpid.server.protocol.v1_0.ProtocolEngine_1_0_0_SASL$4.run(ProtocolEngine_1_0_0_SASL.java:384)
>       at 
> org.apache.qpid.server.protocol.v1_0.ProtocolEngine_1_0_0_SASL$4.run(ProtocolEngine_1_0_0_SASL.java:380)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:360)
>       at 
> org.apache.qpid.server.protocol.v1_0.ProtocolEngine_1_0_0_SASL.received(ProtocolEngine_1_0_0_SASL.java:379)
>       at 
> org.apache.qpid.server.protocol.v1_0.ProtocolEngine_1_0_0_SASL.received(ProtocolEngine_1_0_0_SASL.java:66)
>       at 
> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:153)
>       at 
> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:51)
>       at 
> org.apache.qpid.transport.network.io.IoReceiver.run(IoReceiver.java:161)
>       at java.lang.Thread.run(Thread.java:745)
> Caused by: org.apache.qpid.server.message.MessageSource$ConsumerAccessRefused
>       at 
> org.apache.qpid.server.queue.AbstractQueue.addConsumer(AbstractQueue.java:652)
>       at 
> org.apache.qpid.server.queue.AbstractQueue.addConsumer(AbstractQueue.java:96)
>       at 
> org.apache.qpid.server.protocol.v1_0.SendingLink_1_0.<init>(SendingLink_1_0.java:379)
>       ... 20 more
> {noformat}
> The program creates a durable subscriber and publisher, sends + receives a 
> message, closes the durable subscriber, then unsubscribes the subscription.
> It is notable that after the first run, even though the subscription 
> unsubscribe attempt suceeded, the subscription backing queue is still listed 
> in the web management ui, and the broker logs do not indicate it was deleted 
> (it does log creation), and it still lists having 1 consumer. 
> Restarting the broker, the queue is no longer visible, but this is most 
> likely due to QPID-6383



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to