activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Posta <christian.po...@gmail.com>
Subject Re: Advisory for consumed message for topics
Date Thu, 07 Nov 2013 20:58:41 GMT
Actually... after quick browsing the code (and i didn't try it yet...)
it looks like for non-durable subscriptions to a topic, the "message
consumed" advisory will not be fired because topic.acknowledge(...)
will not be called from TopicSubscription#acknowledge(...). Don't
think this is on purpose, therefore a missing feature/bug.

I can open a jira for this and get a patch+tests going if someone can
confirm this is not on purpose.. that is... non-durable topic messages
that get ack'd should also be fired to the message-consumed
advisories...

On Thu, Nov 7, 2013 at 1:16 PM, Christian Posta
<christian.posta@gmail.com> wrote:
> Should work the same for both queue and topic.
> Can you verify you're listening to ActiveMQ.MessageConsumed.Topic.<topicname>?
>
> On Thu, Nov 7, 2013 at 6:12 AM, jstordeur <jeremie.stordeur@gmail.com> wrote:
>> Hello,
>>
>> I'm running ActiveMQ 5.8. I'm trying to use advisory topics to monitore the
>> processing of the messages by the clients, I have enabled the following
>> advisory in the configuration file:
>>
>>         /<destinationPolicy>
>>             <policyMap>
>>               <policyEntries>
>>                 <policyEntry topic=">" advisoryForConsumed="true"
>> advisoryForDelivery="true" >
>>                   <pendingMessageLimitStrategy>
>>                     <constantPendingMessageLimitStrategy limit="1"/>
>>                   </pendingMessageLimitStrategy>
>>                 </policyEntry>
>>                 <policyEntry queue=">" advisoryForConsumed="true"
>> advisoryForDelivery="true" />
>>                </policyEntries>
>>             </policyMap>
>>         </destinationPolicy>/
>>
>> Now I have a client that uses CLIENT_ACKNOWLEDGE policy and that
>> intentionaly does not acknowledge the messages it receives.
>>
>> When I use the client to consume from a queue and then send a message to
>> this queue, I can see one message arriving in the corresponding
>> /ActiveMQ.Advisory.MessageDelivered.Queue/
>> and if I acknowledge the message I see another arriving in
>> /ActiveMQ.Advisory.MessageConsumed.Queue/
>>
>> So this is working exactly as I would expect it.
>> However when I eprform the same test with a topic, I see messages arriving
>> in the delivered advisory but I never have one in the Consumed one, even
>> when I acknowledge the message and even when using
>> Session::AUTO_ACKNOWLEDGE.
>>
>> Is there something missing in the configuration?
>>
>> Thank you for your time.
>>
>>
>>
>> --
>> View this message in context: http://activemq.2283324.n4.nabble.com/Advisory-for-consumed-message-for-topics-tp4674005.html
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>
>
> --
> Christian Posta
> http://www.christianposta.com/blog
> twitter: @christianposta



-- 
Christian Posta
http://www.christianposta.com/blog
twitter: @christianposta

Mime
View raw message