ActiveMQ.Advisory.MessageConsumed.TempQueue and 
ActiveMQ.Advisory.MessageConsumed.Queue Topics receive advisory messages when 
------------------------------------------------------------------------------------------------------------------------------

                 Key: AMQ-3320
                 URL: https://issues.apache.org/jira/browse/AMQ-3320
             Project: ActiveMQ
          Issue Type: Bug
    Affects Versions: 5.5.0, 5.4.2
            Reporter: Marcel Casado
            Priority: Minor


I have enabled <policyEntry tempQueue="true" advisoryForConsumed="true" /> in 
the broker so I can subscribe to 
"ActiveMQ.Advisory.MessageConsumed.TempQueue.>" to get notified of messages 
consumed on a tempQueue/s. When client shuts down 
if remaining messages are in the tempQueue an advisory message is generated and 
send to the ActiveMQ.Advisory.MessageConsumed.TempQueue topic for each message 
for that tempQueue. The same will happen if purge() is called on a TempQueue or 
Queue for example through JMX.  

In my application I need to know if a message is consumed by a client but I can 
not differentiate between a client "ack" massage and one "ack" by the broker 
when the tempQueue is "disposed" looking to the message sent to the 
ActiveMQ.Advisory.MessageConsumed.TempQueue... . 
 
Looking at the code for TempQueue and Queue this is the sequence :

TempQueue.dispose(context) --> purge() --> removeMessage() -> acknowledge() --> 
messageConsumed() 

This is kind of a conceptual issue since myself consider that removing a 
message due a purge or a tempQueue cleanup should not trigger a messageConsumed 
advisory.


Original ActiveMQ users post : 
http://activemq.2283324.n4.nabble.com/ActiveMQ-Advisory-MessageConsumed-TempQueue-problem-td3510067.html


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to