You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Joe White (JIRA)" <ji...@apache.org> on 2007/02/07 17:46:03 UTC

[jira] Commented: (AMQ-1136) Slow consumer causes producer to block on UsageManager.waitForSpace indefinately

    [ https://issues.apache.org/activemq/browse/AMQ-1136?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_38479 ] 

Joe White commented on AMQ-1136:
--------------------------------

More on the waitForSpace broker lock down. 

JConsole indicates that the broker JVM has plenty of heap space remaining when the waitForSpace message is called. In my case the lockup occurs after a certain total message volume has been reached. The total volume is approximately:

Received - 8600
Sent -17000

The lockup occurs reliably within +/- 500 messages of that volume. The message size is approximately 2kb. The broker has a maximum heap size of 512M.

I have attempted to fix this issue by modifying the pendingMessageLimitStrategy, however it had no effect on the lockup. Specifically I added  
<constantPendingMessageLimitStrategy limit=10"/>

to the policy configuration for all of my topics. I also have tried true and false for persistence.

I am using ActiveMq as the JMS broker for a mule instance and as far as I know all subscribers are non-durable, though I haven't figured out how to confirm this. DEBUG is enabled on the broker and the UsageManager logs things like:

DEBUG UsageManager Memory usage change. from: 1, to: 2
DEBUG UsageManager Memory usage change. from: 1, to: 3
...
DEBUG UsageManager Memory usage change. from: 99, to: 100

At which point all messaging stops. Is there a configuration change that can be made to eliminate this issue?

> Slow consumer causes producer to block on UsageManager.waitForSpace indefinately
> --------------------------------------------------------------------------------
>
>                 Key: AMQ-1136
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1136
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 4.2.0
>            Reporter: Albert Strasheim
>         Attachments: ActiveMqBrokerThreadDump.txt
>
>
> The issue is described in this thread:
> http://www.nabble.com/Blocking-on-UsageManager.waitForSpace-again-tf3031460.html
> Basically, a slow consumer can cause a producer to block on UsageManager.waitForSpace indefinately.
> A basic code sample to reproduce the problem is provided here:
> http://www.nabble.com/Re%3A-Blocking-on-UsageManager.waitForSpace-again-p8521205.html
> Note that the reproducibility of the bug depends on the initial and maximum size of the VM's heap.

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