a topic consumer is only considered slow if twice the prefetch has been dispatched to it w/o an ack. So you need lots of messages. that is why the new abort policy was introduced. I wonder if that is the problem? Or would it be that the prefetchRatePendingMessageLimitStrategy is doing an effective ack. Try without that.
On 18 September 2013 11:41, Oleg Dulin <oleg.du...@gmail.com> wrote: > Here are my policies: > > <destinationPolicy> > <policyMap> > <policyEntries> > <policyEntry topic="X.>" > producerFlowControl="false" > prioritizedMessages="true"> > </policyEntry> > <policyEntry queue="Y" > producerFlowControl="true" > prioritizedMessages="true" > > storeUsageHighWaterMark="75"> > </policyEntry> > <policyEntry topic="Z.>" > producerFlowControl="false" > advisoryForSlowConsumers="true"> > <!-- > amq:slowConsumerStrategy> > > <amq:abortSlowConsumerStrategy checkPeriod="1000" > > maxSlowDuration="30000"/> > </amq:slowConsumerStrategy > --> > > <pendingMessageLimitStrategy> > > <prefetchRatePendingMessageLimitStrategy > > multiplier="1.5" /> > > </pendingMessageLimitStrategy> > </policyEntry> > <policyEntry tempQueue="true" > producerFlowControl="true" > memoryLimit="10mb" > advisoryForSlowConsumers="true" queuePrefetch="1024" > expireMessagesPeriod="10000" > gcInactiveDestinations="true"> > </policyEntry> > </policyEntries> > </policyMap> > </destinationPolicy> > > I disguised the actual topics for confidentiality. > > My test is this. I run the application and set a breakpoint in the consumer > on Z.FOO.BAR and my expectation is that Z.> policy would kick in and after > some time I get an advisory message on > ActiveMQ.Advisory.SlowConsumers.Topic.Z.FOO.BAR -- but I don't. > > The same test works with simple Java program…. > > What am I doing wrong ? > > > > -- > Regards, > Oleg Dulin > http://www.olegdulin.com -- http://redhat.com http://blog.garytully.com