You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Gary Tully (JIRA)" <ji...@apache.org> on 2009/11/11 10:29:52 UTC

[jira] Created: (AMQ-2483) OOM due to build of of iterate executions during bulk message consumption - asyncWakeup called excessivly

OOM due to build of of iterate executions during bulk message consumption - asyncWakeup called excessivly
---------------------------------------------------------------------------------------------------------

                 Key: AMQ-2483
                 URL: https://issues.apache.org/activemq/browse/AMQ-2483
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
    Affects Versions: 5.3.0
            Reporter: Gary Tully
            Assignee: Gary Tully


when consuming a large of messages,the method:asyncWakeup() is invoked
crazily,so the executor has a great deal of  runnable that callback Queue.iterate(), but
Queue.iterate() is much slower than the increasing of runnable in the
executor. this result in OOM.

avoid to invoke the method:asyncWakeup()  frequently???

http://old.nabble.com/file/p26278228/oom.jpg

Context:  http://old.nabble.com/Out-of-Memory-on-5.3-tp26064098p26297020.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (AMQ-2483) OOM due to build of of iterate executions during bulk message consumption - asyncWakeup called excessivly

Posted by "Gary Tully (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/AMQ-2483?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gary Tully resolved AMQ-2483.
-----------------------------

       Resolution: Fixed
    Fix Version/s: 5.3.1

resolved in r835874
revert queue back to pooled/dedicated task runner where multiple wake up calls are consolidated. To ensure no  call is ignored, the queue tracks pending wakeupRequests and requests a repeat iteration till all requests are satisfied.
Run of unit tests with -DuseDedicatedTaskRunner=true threw up a few failures, one of which was: https://issues.apache.org/activemq/browse/AMQ-2028
I exposed useDedicatedTaskRunner on connection factory to allow explicit unit test verification and propagated broker.useDedicatedTaskRunner to make it more easily configurable. 

> OOM due to build of of iterate executions during bulk message consumption - asyncWakeup called excessivly
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-2483
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2483
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.3.0
>            Reporter: Gary Tully
>            Assignee: Gary Tully
>             Fix For: 5.3.1
>
>
> when consuming a large of messages,the method:asyncWakeup() is invoked
> crazily,so the executor has a great deal of  runnable that callback Queue.iterate(), but
> Queue.iterate() is much slower than the increasing of runnable in the
> executor. this result in OOM.
> avoid to invoke the method:asyncWakeup()  frequently???
> http://old.nabble.com/file/p26278228/oom.jpg
> Context:  http://old.nabble.com/Out-of-Memory-on-5.3-tp26064098p26297020.html

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.