dalin wrote:
> 
> It appears that as each message is paged in, a MessageReference object is
> created for each message and stored in the linkedlist pagedInMessages. The
> elements in the list are removed upon calling gc() in
> org.apache.activemq.broker.region.Queue. This occurs when purge() is
> called or when dropEvent() is called and garbageSize >
> garbageSizeBeforeCollection. However, the linkedlist can potentially
> contain 1000 MessageReference objects before gc() is called. In my case,
> the content of each ObjectMessage that I send out to a consumer is about
> 800KB with compression turned on. This in turn leads to about 800MB of
> memory being used up by the linkedlist before gc() is called.
> 
> Anyone can easily simulate this scenario by using a single broker with one
> producer and one consumer. Turn compression off. Have the producer send an
> ObjectMessage containing an 800KB byte array, and the consumer consume the
> message. Using a profiler or jmx, you can see that the heap size steadily
> increases and then drops after sending 1000 messages.
> 
> Is there any way to allow the user to change or set the value of
> garbageSizeBeforeCollection in org.apache.activemq.broker.region.Queue?
> Thanks.
> 

I've create a jira issue to track this:
https://issues.apache.org/activemq/browse/AMQ-1553
-- 
View this message in context: 
http://www.nabble.com/ActiveMQ-ver5.0-number-of-paged-in-messages-tp14860957s2354p14955303.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to