activemq-dev mailing list archives

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

     [ https://issues.apache.org/activemq/browse/AMQ-1789?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Rob Davies reassigned AMQ-1789:
-------------------------------

    Assignee: Rob Davies

> 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
>            Assignee: Rob Davies
>
> 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