GitHub user JiriOndrusek opened a pull request: https://github.com/apache/activemq-artemis/pull/2018
[ARTEMIS-1776] - Implement asynchronous flow control on bridge and clustered bridge Issue: https://issues.apache.org/jira/browse/ARTEMIS-1776 Currently the flow control on the Bridge is based on back pressure only, through Netty writeable interfaces. If the user selected a positive producerWindowSize the Queue may block while the Processing is happening. What could lead to distributed deadlocks on the Bridge. These changes avoids that possibility. You can merge this pull request into a Git repository by running: $ git pull https://github.com/JiriOndrusek/activemq-artemis Asynchronous_flow_control_on_the_bridge Alternatively you can review and apply these changes as the patch at: https://github.com/apache/activemq-artemis/pull/2018.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2018 ---- commit 1e6e1f77d0323e87c5129fa187b7841f0a4d34e2 Author: Howard Gao <howard.gao@...> Date: 2018-01-19T08:36:47Z ARTEMIS-1621 Make producerWindowSize configurable on clusterconnection bridges The cluster connection bridge hard codes its producerWindowSize to -1 (meaning no producer flow control) even if you configure it otherwise. Cherry-picked from 98ce31bf588a314a0408216e4ad4b85597a15186 commit 2c73bd0462b3818d49ce7c4557e1b48587707cb1 Author: Clebert Suconic <clebertsuconic@...> Date: 2018-03-28T16:40:06Z ARTEMIS-1776 Asynchronous Flow control on the bridge Cherry-picked from 70bdfe760393a9d7d17ec175ea68ce83819fe83c commit 3c546092788c1d6cf7f16d5a2b0938de00f2410a Author: Clebert Suconic <clebertsuconic@...> Date: 2018-04-06T14:00:43Z ARTEMIS-1776 Blocked Bridge is not resuming after reconnect This is still part of ARTEMIS-1776 fix, which still part of the same release as we are on now. Hence I'm not opening a new JIRA for this one. Cherry-picked from e5bce13316f7e81bb15a12592622df2ea2632a35 ---- ---