activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Timothy Bish (JIRA)" <j...@apache.org>
Subject [jira] [Closed] (AMQ-1868) Producer block when queue memory limit is setted to 5Mb and no consumer is actived
Date Fri, 01 Jul 2011 20:09:30 GMT

     [ 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

        

Mime
View raw message