set the cursor high water mark to 110, so it will not be reached because pfc will kick in first. then set <systemUsage sendFailIfNoSpace="true"> and the producers will get an exception when the memory limit is exceeded. With this setup the default store cursor will be have like a vm cursor.
On 25 March 2014 07:39, tikboy <tikboy.balat...@gmail.com> wrote: > Actually what I would like is when the memoryLimit for a certain queue is > reached (even if it is set to 70%), the data should not be offloaded to any > store (memory, kahadb, temp) and for the producers to know that an exception > has happened so they could handle for themselves. > > What is currently happening is that once the memoryLimit for a queue is > reached, the data is offloaded to the memory store when I was using vmCursor > or to the kahadb when i was using fileCursor. The producers are still able > to send messages to that queue until the storeUsage reaches its limit which > would cause all other queues in the broker to stop receiving any messages. > > I have very little control on the data that is being sent by the producer > since they are from another team. My contract with them is just the format > of the message. Most of the time they send data which is >5MB and they send > that as often as they see fit. During this, the storeUsage would grow in > size up to the point where my broker stalls. > > If I could just prevent the overflow from affecting the other queues. Is > this possible for AMQ 5.5.1? > > Im using fileStore since they are sending quite a huge amount of data and I > dont know how to stop them from sending. Once I know how not to offload, > then I may change it back. > > > > -- > View this message in context: > http://activemq.2283324.n4.nabble.com/memoryLimit-behavior-5-5-1-tp4679389p4679491.html > Sent from the ActiveMQ - User mailing list archive at Nabble.com. -- http://redhat.com http://blog.garytully.com