Hiram R. Chirino f3b1549921 r234@34: chirino | 2007-02-23 14:47:41 -0500
When a message send blocks on a destination level usage manager, it blocks all publishers on the same connection even publishers that are publishing to destinations who's limits have not been reached.  In some scenarios, this can result in a deadlock since it prevents publishing to a destination that could otherwise receive messages.
 
 This patch delays sending the repsone to sync publishers until the destination usage allows the message to be sent but does not block on the send.  This allows other producers on the same connection to get serviced but flow controls the producers on full destinations by delaying the send response.
 
 In order to take advantage of this new producer flow control which avoid the described deadlock, sync sends must be used.  To force sync sends for all send requests, a new 'useSyncSend' option should be set to true on the ActiveMQConnectionFactory.  
 
 Hopefully a future version this patch will be developed that provides the same feaure but works with async sends and a producer ack to flow control the producer.
 
 


git-svn-id: https://svn.apache.org/repos/asf/activemq/branches/activemq-4.1@511078 13f79535-47bb-0310-9956-ffa450edef68
2007-02-23 20:22:24 +00:00
2006-11-14 21:17:31 +00:00
2006-11-14 21:17:31 +00:00
2006-11-14 21:43:07 +00:00
2006-12-19 21:28:20 +00:00
2006-11-14 21:17:31 +00:00
2006-11-14 21:44:09 +00:00
2006-11-14 21:44:53 +00:00
2006-11-14 21:17:31 +00:00
2006-11-14 22:09:15 +00:00
2006-11-14 21:17:31 +00:00
2006-10-03 22:29:08 +00:00
2006-11-14 21:17:31 +00:00

Welcome to Apache ActiveMQ 
=================== 
Apache ActiveMQ is a high performance Apache 2.0 licenced Message Broker and JMS 1.1 implementation.


Incubation Disclaimer
=====================
Apache ActiveMQ is an effort undergoing incubation at the Apache Software Foundation (ASF), sponsored by the Geronimo PMC. 

Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, 
communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. 

While incubation status is not necessarily a reflection of the completeness or stability of the code, it does 
indicate that the project has yet to be fully endorsed by the ASF.


Getting Started
===============
To help you get started, try the following links:-

Getting Started
http://incubator.apache.org/activemq/getting-started.html

Building
http://incubator.apache.org/activemq/getting-started.html#GettingStarted-WindowsSourceInstallation
http://incubator.apache.org/activemq/getting-started.html#GettingStarted-UnixSourceInstallation

Examples
http://incubator.apache.org/activemq/examples.html

We welcome contributions of all kinds, for details of how you can help
http://incubator.apache.org/activemq/contributing.html

Please refer to the website for details of finding the issue tracker, email lists, wiki or IRC channel
http://incubator.apache.org/activemq/

Please help us make Apache ActiveMQ better - we appreciate any feedback you may have.
Enjoy!

------------------------
The Apache ActiveMQ team
Languages
Java 97%
JavaScript 1.7%
HTML 0.6%
Shell 0.3%
CSS 0.1%
Other 0.1%