We have some administrative task, from time to time. For example, move database on another physical server etc. It's very easy when write to database in offloaded with ActiveMQ. We simply turn off the consumer updating database, move database, switching read to a new database, and finally, turning on consumer with new database.
It's all works fine when task quite small (in terms of time). But if we turn off consumer for a long period of time (for example a day), we experience problems with non persisted messages. ActiveMQ try to hold them all in memory, so soon a later it hangs up with OutOfMemoryError. This shouldn't be a big problem, as of ActiveMQ have special store (Temp store) for flushing non persistent messages on a disk. I'm play around with some configuration options (memoryUsage, tempUsage, queue memory limit policies), but can not figure it out, how to deal with this problem. Thanks a lot. -- Denis Bazhenov <bazhe...@farpost.com> FarPost