On Thu, Jun 06, 2013 at 08:34:03AM -0700, Christian Posta wrote: > When you have producer flow control enabled, your producers should block > when you've reached the memory limits (50mb). If you can write a unit test > that shows otherwise, I would gladly take a look.
Hi Christian, again thanks for your help. I have been testing it a bit with different settings, and I'm sort of getting the same behaviour. I have two different test configurations: 1) Flow control enabled (by default) on all queues and topics. 50 Mb memory Limit, and no cursors. Temp storage set to 500 Mb. http://pastebin.com/Ma7b4B6V 2) Flow control disabled and cursors set to use files and temporary storage. Again, memory is 50Mb per queue, Temp storage set to 500 Mb. http://pastebin.com/3t9p2NqX 3) a simple producer writen in python, based on stomp.py: http://pastebin.com/1Uge3mvC Basically, with these configs, I'm seeing the same behaviour, the producer starts inserting messages, on around the 36 Mb mark, it starts using the temporary file storage, and then it pauses on the 483 message, saying the temp storate is full. 36, being ~ 70% of 50. Always with a log like: [2013-06-07 12:07:23,975] INFO ActiveMQ Transport: tcp:///10.0.9.124:40507 org.apache.activemq.broker.region.Queue - Usage(default:temp:queue://testqueue:temp) percentUsage=96%, usage=536510464, limit=524288000, percentUsageMinDelta=1%;Parent:Usage(default:temp) percentUsage=102%, usage=536510464, limit=524288000, percentUsageMinDelta=1%: Temp Store is Full (96% of 524288000). Stopping producer (ID:mneme-54444-1370603136982-2:1:-1:1) to prevent flooding queue://testqueue. See http://activemq.apache.org/producer-flow-control.html for more info (blocking for: 91s) So, anyway, what I'm trying to do is to have a sane config that at least is not going to explode, with both flow control enabled and flow control disabled. If temporary usage via the cursors is supposed to work like this, then it's all good. It might also be that I'm not really understanding how this is supposed to work, in that case feel free to RTFM me ;-). I don't know if this is what you want as a unit test, but let me know otherwise, and I'll procure whatever is necessary. Thanks again with your help. -- JRF