You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Jaroslav Sedlacek (JIRA)" <ji...@apache.org> on 2015/03/16 04:30:38 UTC

[jira] [Created] (AMQ-5663) Memory leak in message batching

Jaroslav Sedlacek created AMQ-5663:
--------------------------------------

             Summary: Memory leak in message batching
                 Key: AMQ-5663
                 URL: https://issues.apache.org/jira/browse/AMQ-5663
             Project: ActiveMQ
          Issue Type: Bug
    Affects Versions: 5.10.0
            Reporter: Jaroslav Sedlacek


Memory leak in peristent message batching (Queue.massages.persistent.batchList) caused by inconsistent "cacheEnabled" flag handling.

When AMQ is started and queue has more messages then maxPageSize/maxExpirePageSize/maxBrowsePageSize, then cacheEnabled flag stays "false" and no additional message is stored in batchList.
If queue has less messages than that, cacheEnabled is set to "true" and it is set to true only when AMQ has no more space (see AbstractPendingMessageCursor.hasSpace() - by default 70% of heap). It means batchList can grow significantly in this case.

This behaviour was noticed on DLQ kind of queue with no consumer when a big bunch of messages was added and it caused OOM.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)