Affects Version/s: 5.5.1
Fix Version/s: None
OSX, Apple Java Runtime 1.6.0_26
I have defined a topic with a memoryLimit of 1mb using a fileDurableSubscriberCursor. I would expect that sending messages to a durable subscriber through that topic would result in more than 1mb worth of messages being able to be sent. Instead producer flow control kicks in at the 1mb limit.
To test this I am using the Maven activemq-perf plugin with a single consumer and producer:
$ mvn activemq-perf:producer -Durl=tcp://localhost:61616 -Dproducer.destName=topic://orders
$ mvn activemq-perf:consumer -Durl=tcp://localhost:61616 -Dconsumer.durable=true -Dconsumer.destName=topic://orders -Dconsumer.recvDelay=100
This does not match the behaviour described in http://activemq.apache.org/my-producer-blocks.html or http://activemq.apache.org/message-cursors.html
Going by the docs, I would expect messages to get paged out to disk until the systemUsage/tempUsage limit fills up.
This same behaviour happens using the default cursor configuration.
Attached are the activemq-perf pom and activemq.xml.