The client connects and specified a client id:
CONNECT
client-id:test2
and subscribes with a subscription name
SUBSCRIBE
destination:/topic/TestUnsubscribeDurable
ack:auto
id:...
activemq.subscriptionName:testsub
But when the client sends the two unsubscribe frames as explained in
http://stackoverflow.com/questions/30519152/how-to-unsubscribe-from-durable-topic-subscription,
UNSUBSCRIBE
destination:/topic/TestUnsubscribeDurable
UNSUBSCRIBE
destination:/topic/TestUnsubscribeDurable
activemq.subscriptionName:testsub
the ActiveMQ broker logs a warning:
WARN | Exception occurred processing: null:
javax.jms.InvalidDestinationException: No durable subscription exists
for clientID: testsub and subscriptionName: testsub
The warning is a bit confusing because the clientID used when connecting
was test2, not testsub.
Unsubscribing only seems to work when client-id equals subscriptionName
(the admin interface then no longer shows the subscription).
ActiveMQ 5.7 removed the restriction that client-id and subscriptionName
have to be the same. Can it be that this change was not applied to the
unsubscribe logic?
Also posted on Stackoverflow at http://stackoverflow.com/questions/35936950/