Incidentally you could disable the journal if you have limited RAM and are happy to trade performance for lower RAM usage...
use <jdbcPersistenceAdapter/> instead in your XML like this example http://incubator.apache.org/activemq/jdbc-master-slave.html its much slower but doesn't require messages to be kept in RAM until a checkpoint. On 8/24/06, James Strachan <[EMAIL PROTECTED]> wrote:
Are you sure you are definitely setting the Java heap size? e.g. its usually -Xmx1000m not -xmx etc. If you watch the broker in JMX do you see it using up 1Gb of RAM when you only have a 100Mb usage manager setting? Note that ActiveMQ uses a high performance journal so that messages are only evicted from RAM when a checkpoint to JDBC occurs, not the exact second that a message is consumed. So you are sending 1000 messages to 5 topics of 100K. So thats about 500Mb of messages. So I'd try set your memoryManager to be 800mb and your Java heap to be about 2000M and that should work - use JMX to see how much memory its using and how many messages get sent to the queues. On 8/24/06, pradeep <[EMAIL PROTECTED]> wrote: > > Thanks James. > I am using 4.0.1. I tried lowering the memory to 100MB. It did not work. > I increased the size to 400 MB, 800mb etc. > > It still gives me > Exception in thread "ActiveMQ Transport: tcp:///127.0.0.1:3116" > java.lang.OutOfMemoryError: Java heap space > > Why doesn't ActiveMQ remove the messages from memory when it has already > persisted messages into database. I am seeing the memory problem in > ActiveMQ and not other JMS server that I am evaluating. > James, can you please help me here. > > Pradeep > > > James.Strachan wrote: > > > > FWIW if you use ActiveMQ 4.1 you can configure the memory limit via > > > > <usageManager limitMb="100"/> > > > > On 8/23/06, James Strachan <[EMAIL PROTECTED]> wrote: > >> That memory limit looks a bit big; its about 7Gb I'd maybe set it to > >> be around 100Mb insteead > >> > >> On 8/23/06, pradeep <[EMAIL PROTECTED]> wrote: > >> > > >> > 1. Created a durable subsriber for 5 different topics and disonnected > >> the > >> > clients > >> > 2. Tried to send 1000 messages to each topic (message size =100kb) in > >> > parallel > >> > 5 threads were created each sending messages to different topics > >> > (Separate connection Factory lookup and topic lookup) > >> > I got this error this > >> > > >> > INFO Service - Sync error occurred: > >> > java.lang.OutOfMemoryError: Java heap space > >> > java.lang.OutOfMemoryError: Java heap space > >> > > >> > WARN JournalMessageStore - Message could not be added to > >> long > >> > term store: Java heap space > >> > java.lang.OutOfMemoryError: Java heap space > >> > > >> > > >> > I am running the activemq with -xms 256m -xmx1000m. > >> > activemq.xml has > >> > <memoryManager> > >> > <usageManager id="memory-manager" limit="8048576000"/> > >> > </memoryManager> > >> > > >> > Why is the error coming ? > >> > -- > >> > View this message in context: > >> http://www.nabble.com/INFO--Service--------------------------Sync-error-occurred%3A-java.lang.Ou-tf2152180.html#a5943593 > >> > Sent from the ActiveMQ - User forum at Nabble.com. > >> > > >> > > >> > >> > >> -- > >> > >> James > >> ------- > >> http://radio.weblogs.com/0112098/ > >> > > > > > > -- > > > > James > > ------- > > http://radio.weblogs.com/0112098/ > > > > > > -- > View this message in context: http://www.nabble.com/INFO--Service--------------------------Sync-error-occurred%3A-java.lang.Ou-tf2152180.html#a5959137 > Sent from the ActiveMQ - User forum at Nabble.com. > > -- James ------- http://radio.weblogs.com/0112098/
-- James ------- http://radio.weblogs.com/0112098/
