[
https://issues.apache.org/jira/browse/AMQ-3678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dominic Tootell updated AMQ-3678:
---------------------------------
Attachment: Topic.patch.txt
CountMessagesRecievedOnDurableTopicAfterTopicDeletion.java
> Active Durable Topic Consumer is not re-assigned to Topic after it is deleted
> and recreated
> -------------------------------------------------------------------------------------------
>
> Key: AMQ-3678
> URL: https://issues.apache.org/jira/browse/AMQ-3678
> Project: ActiveMQ
> Issue Type: Bug
> Components: Broker
> Affects Versions: 5.5.1
> Environment: Mac OS X (10.7.2)
> Reporter: Dominic Tootell
> Labels: Topic
> Attachments:
> CountMessagesRecievedOnDurableTopicAfterTopicDeletion.java, Topic.patch.txt
>
>
> If I have a durable subscriber on a topic, which is *{{active}}*; and a
> message
> producer is sending to the topic. If the topic is deleted (whist the durable
> consumer is *{{active}}*), should the durable subscription be re-added to the
> topic (as a consumer) when it the TOPIC is subsequently recreated by the
> producer
> on the next message send?
> When replicating the above with a QUEUE that has an active consumer and
> producer.
> If you delete the queue whilst the producer and consumer are active, the next
> message
> sent by the producer recreates the QUEUE, and the active consumer is then
> registered
> as a consumer on the queue. However, this isn't the case for an active
> durable consumer
> (which isn't re-added as a consumer); when the TOPIC is subsequently
> recreated by the
> producer's next message to the topic.
> It could be the case that you should not be able to delete the topic, via
> jmx, when
> an active durable consumer is present? If so, then should this logic also
> apply to the queue? (not able
> to delete it via jmx when it has an active consumer).
> To re-attach the active durable consumer to the newly created topic, in
> -
> http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java
> You could apply the attached patch to the *{{public void
> addSubscription(ConnectionContext context, final Subscription sub) throws
> Exception }}* method (line 112) to re-add the durable consumer. (junit
> included)
> ----
> A related question to the above is should the advisory
> - "ActiveMQ.Advisory.Consumer.Topic.XXX" or
> - "ActiveMQ.Advisory.Consumer.Queue.XXX"
> Be recreated when the active consumer reattaches to the queue or topic?
> When you remove, via jmx, the Queue or Topic the associated Consumer Advisory
> Topic is also removed.
> When the queue or topic is recreated, and the consumer re-assigned to the new
> queue; the advisory isn't
> created/fired. Would this cause any issues? Should an advisory be sent?
> does it affect *{{dynamicallyIncludedDestinations}}*
> and the use of the Advisories when using a network of brokers?
> cheers
> /dom
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira