[
https://issues.apache.org/jira/browse/AMQ-1868?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Timothy Bish closed AMQ-1868.
-----------------------------
Resolution: Not A Problem
Simple case of producer flow control kicking in when low memory limits are set
and no consumer present on the queue.
> Producer block when queue memory limit is setted to 5Mb and no consumer is
> actived
> ----------------------------------------------------------------------------------
>
> Key: AMQ-1868
> URL: https://issues.apache.org/jira/browse/AMQ-1868
> Project: ActiveMQ
> Issue Type: Bug
> Components: Broker
> Affects Versions: 5.1.0
> Environment: Unix, jdk 1.5.0_12, AMQ 5.1.0
> Reporter: Alessandro Zanfardino
> Fix For: NEEDS_REVIEWED
>
> Attachments: AMQTester.zip, activemq.xml
>
>
> Hallo
> I'm using the attached source code to test AMQ 5.1.0
> I'm using following setting:
> //SESSION
> ackMode = Session.AUTO_ACKNOWLEDGE;
> //FACTORY
> dispatchAsync = true;
> useAsyncSend = false;
> //PRODUCERS
> DelveryMode=Pesrsistent
> timeToLive = 21600000; //6h
> If I use the following configuration in activemq.xml:
> <memoryUsage limit="20 mb"/>
> <policyEntry queue=">" memoryLimit="5mb"/>
> I noted this behaviour:
> if producer starts a loop of sendMessage on a queue where no consumer is
> listen, after N messages, when the 5Mb are full, producer is blocked.
> Block ends when some consumer registers a listener on this queue and start
> to conuming messages.
>
> If I change the configuration, removing queue memory limit like below:
> <memoryUsage limit="20 mb"/>
> <policyEntry queue=">" />
> and producer starts a loop of sendMessage on a queue where no consumer
> is listen, producer is NEVER blocked.
> Memory usage percentage go up until 90% and then remains steady, but
> producer continues to send.
> I expected this same behaviour when queue memory limit was 5Mb, also.
> Further, I set values for queue memory limit higher than 5Mb and
> repeated the test :
> memoryLimit="10 mb" => producer was blocked
> memoryLimit="18 mb" (=90% of 20Mb) => producer was blocked
> memoryLimit="19 mb" ( >90% of 20Mb) => producer NEVER blocked
> I expected that producer NEVER blocked in every cases.
> Please can you help me for this issue?
> Feel free to ask me other details.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira