[
https://issues.apache.org/activemq/browse/AMQ-2616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=57649#action_57649
]
Mats Henrikson commented on AMQ-2616:
-------------------------------------
A more realistic sequence of events is this:
# ConsumerA sends RequestB to QueueC, with a reply-to of TempQueueD.
# ProducerE receives RequestB and starts sending messages back to TempQueueD.
# ConsumerA runs out of memory and dies, the broker closes the connection.
# ProducerE continues sending messages to TempQueueD until the broker Usage
Manager Memory Limit is reached. From this point no producer can send any
messages to any temporary queues.
# The sysadmins discover something is wrong and kill ProducerE, the broker
claims to free up the resources, however the problem remains.
> filling a temporary queue and disconnecting does not free the queues Usage
> Manager memory limit
> -----------------------------------------------------------------------------------------------
>
> Key: AMQ-2616
> URL: https://issues.apache.org/activemq/browse/AMQ-2616
> Project: ActiveMQ
> Issue Type: Bug
> Components: Broker
> Affects Versions: 5.3.1
> Reporter: Mats Henrikson
> Attachments: activemq.xml
>
>
> Starting a broker running the latest 5.3.1 snapshot with the simple attached
> configuration, then connecting a producer that sends messages to a temporary
> queue (without any consumer on it) until it hits the Usage Manager memory
> limit and gives this message:
> {panel}
> INFO Topic - Usage Manager memory limit reached for
> temp-topic://ID:sts-chc-matsh-33157-1266457317460-0:0:1. Producers will be
> throttled to the rate at which messages are removed from this destination to
> prevent flooding it. See
> http://activemq.apache.org/producer-flow-control.html for more info
> {panel}
> If you then disconnect the producer you get a log message that the temporary
> queue is being removed, but if you connect another producer and try to
> produce to a new temporary queue no messages are accepted, and the broker
> just prints the "Usage Manager memory limit reached" message again.
> This is a denial of service since if you now connect a consumer on a new
> temporary queue no messages will be accepted for that temporary queue.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.