activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mario Lukica (JIRA)" <j...@apache.org>
Subject [jira] Created: (AMQ-1789) queue.send() throws ResourceAllocationException without checking usageManager when sendFailIfNoSpace is set
Date Tue, 10 Jun 2008 17:53:00 GMT
queue.send() throws ResourceAllocationException without checking usageManager when sendFailIfNoSpace
is set
-----------------------------------------------------------------------------------------------------------

                 Key: AMQ-1789
                 URL: https://issues.apache.org/activemq/browse/AMQ-1789
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
    Affects Versions: 4.1.2
            Reporter: Mario Lukica


org.apache.activemq.broker.region.Queue send(ConnectionContext, Message) method always throws
ResourceAllocationException if sendFailIfNoSpace is set, producerFlowControl is enabled, message
response is not required and network connection is not used to connect to broker. 

In this case thread execution ends up in following code block: 
{code}
            ... 
            } else { 
                if (usageManager.isSendFailIfNoSpace() ) { 
                    throw new javax.jms.ResourceAllocationException("Usage Manager memory
limit reached"); 
                } else { 
                    while( !usageManager.waitForSpace(1000) ) { 
                        if( context.getStopping().get() ) 
                            throw new IOException("Connection closed, send aborted."); 
                    } 
                } 
            } 
{code}

... usageManager is never checked for space prior to throwing ResourceAllocationException("Usage
Manager memory limit reached"), and no message can be sent to this queue, regardless of the
usageManager set on queue.

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


Mime
View raw message