Keith Wall created ARTEMIS-1893:
-----------------------------------

             Summary: subscription queues for non-durable subscriptions are not 
deleted when AMQP links are detached
                 Key: ARTEMIS-1893
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1893
             Project: ActiveMQ Artemis
          Issue Type: Bug
    Affects Versions: 2.5.0
            Reporter: Keith Wall


If an AMQP 1.0 peer attaches a link that will expire on {{link-detach}}, and 
then later detaches the link with a {{closed=false}}, as it makes no sense for 
the link ever to be attached again, the Broker ought to treat this as if 
{{closed=true}} and free any resources associated with the link and respond 
with a {{detach closed=true}}.   This currently does not happen.

This defect was exposed when testing EnMasse (with a standard address space).  
The application (using the Qpid JMS Client) had created non-durable topic 
subscriptions and was then disconnected ungracefully.  The queues backing the 
subscription were seen to leak on the Broker.

The protocol trace between Qpid Dispatch and the Broker follows ({{->}} = 
Dispatch to Broker):
{noformat}
[0x7f6acc051b10]:4 -> @attach(18) 
[name="qpid-jms:receiver:ID:ac75e7c3-e850-4a23-bb4f-4220dffa1dac:1:1:1:footopic2",
 handle=0, role=true, snd-settle-mode=2, rcv-settle-mode=0, source=@source(40) 
[address="footopic2", durable=0, expiry-policy=:"link-detach", timeout=0, 
dynamic=false, outcomes=@PN_SYMBOL[:"amqp:accepted:list", 
:"amqp:rejected:list", :"amqp:released:list", :"amqp:modified:list"], 
capabilities=@PN_SYMBOL[:topic]], target=@target(41) [durable=0, timeout=0, 
dynamic=false], initial-delivery-count=0, max-message-size=0]
[0x7f6acc051b10]:4 <- @attach(18) 
[name="qpid-jms:receiver:ID:ac75e7c3-e850-4a23-bb4f-4220dffa1dac:1:1:1:footopic2",
 handle=0, role=false, snd-settle-mode=2, rcv-settle-mode=0, source=@source(40) 
[address="footopic2", durable=0, expiry-policy=:"link-detach", timeout=0, 
dynamic=false, outcomes=@PN_SYMBOL[:"amqp:accepted:list", 
:"amqp:rejected:list", :"amqp:released:list", :"amqp:modified:list"], 
capabilities=@PN_SYMBOL[:topic]], target=@target(41) [durable=0, timeout=0, 
dynamic=false], initial-delivery-count=0, max-message-size=0]
[0x7f6acc051b10]:4 -> @detach(22) [handle=0, closed=false, error=@error(29) 
[condition=:"qd:routed-link-lost", description="Connectivity to the peer 
container was lost"]]
[0x7f6acc051b10]:4 <- @detach(22) [handle=0, closed=false]
{noformat}




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to