[
https://issues.apache.org/jira/browse/ARTEMIS-1932?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16520802#comment-16520802
]
Justin Bertram commented on ARTEMIS-1932:
-----------------------------------------
Point taken about the delimiter. However, I removed it from my test and the
test passes. After the client unsubscribes the address and queue are removed.
I put the test
[here|https://github.com/jbertram/activemq-artemis/commit/91b0f04d61cd52896e7c9165ff6559a9e9f3752a].
That branch also has some additional STOMP frame logging code that I
cherry-picked from
[here|https://github.com/apache/activemq-artemis/commit/c0d28432ad113190ba51777c7e92f38be87e933d].
Here's the frame info the broker logs:
{noformat}
STOMP(/127.0.0.1:36108, c4b7b2a6): IN << StompFrame[command=CONNECT,
headers={accept-version=1.2, host=localhost, login=brianm, passcode=wombats},
content= null, bytes= []
STOMP(/127.0.0.1:36108, c4b7b2a6):OUT >> StompFrame[command=CONNECTED,
headers={version=1.2, session=c4b7b2a6, server=ActiveMQ-Artemis/2.7.0-SNAPSHOT
ActiveMQ Artemis Messaging Engine}, content= null, bytes= null
STOMP(/127.0.0.1:36108, c4b7b2a6): IN << StompFrame[command=SUBSCRIBE,
headers={destination=/queue/test.foo.*, ack=client-individual,
receipt=6ac11fd7-89d8-49ff-8820-581c28c96ab7,
id=1bb2d619-fd1b-4c11-8489-7fa4ec7044cd, subscription-type=ANYCAST}, content=
null, bytes= []
STOMP(/127.0.0.1:36108, c4b7b2a6):OUT >> StompFrame[command=RECEIPT,
headers={receipt-id=6ac11fd7-89d8-49ff-8820-581c28c96ab7}, content= null,
bytes= null
STOMP(/127.0.0.1:36108, c4b7b2a6): IN << StompFrame[command=UNSUBSCRIBE,
headers={receipt=5ef45fe6-f5c9-43db-bca7-d086176be7b6,
id=1bb2d619-fd1b-4c11-8489-7fa4ec7044cd}, content= null, bytes= []
STOMP(/127.0.0.1:36108, c4b7b2a6):OUT >> StompFrame[command=RECEIPT,
headers={receipt-id=5ef45fe6-f5c9-43db-bca7-d086176be7b6}, content= null,
bytes= null
STOMP(/127.0.0.1:36108, c4b7b2a6): IN << StompFrame[command=DISCONNECT,
headers={receipt=08487147-bfaa-403b-9b31-9e4ce9a364f8}, content= null, bytes= []
STOMP(/127.0.0.1:36108, c4b7b2a6):OUT >> StompFrame[command=RECEIPT,
headers={receipt-id=08487147-bfaa-403b-9b31-9e4ce9a364f8}, content= null,
bytes= null
{noformat}
These frames essentially match the beginning of the log you attached, but once
the {{DISCONNECT}} happens the {{/queue/test.foo.*}} address and queue are
removed.
Of course, this is on master. Can you try your test against master?
> Wildcard subscriptions create permanent bindings (STOMP)
> --------------------------------------------------------
>
> Key: ARTEMIS-1932
> URL: https://issues.apache.org/jira/browse/ARTEMIS-1932
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Reporter: Lionel Cons
> Priority: Major
> Attachments: ARTEMIS-1932.text, broker.xml
>
>
> When using STOMP to create a wildcard subscription to {{/queue/test.\*}},
> Artemis creates a {{/queue/test.\*}} address and an eponymous ANYCAST queue
> within. So far, so good.
> However, these automatically created objects are permanent and survive at the
> end of the connection.
> Here is the test scenario:
> - start with an empty broker
> - connect
> - subscribe to {{/queue/test.\*}}
> - unsubscribe
> - disconnect
> - bug => the address and queue remain
> - connect
> - send a message to {{/queue/test.foo}}
> - bug => the message appears in the {{/queue/test.\*}} queue (in addition to
> {{/queue/test.foo}})
> FWIW, I'm using {{default-address-routing-type}} to make sure destinations
> starting with {{/queue/}} act like a queue (see ARTEMIS-1906).
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)