Repository: qpid-dispatch Updated Branches: refs/heads/master 197e49a25 -> 01ac510c0
DISPATCH-208 - Additional fix needed: limit fanout to remote routers to one for single semantics. Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/01ac510c Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/01ac510c Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/01ac510c Branch: refs/heads/master Commit: 01ac510c00a83d9854d8ad3af9ff10ea4fa14b17 Parents: 197e49a Author: Ted Ross <[email protected]> Authored: Wed Jan 27 08:48:41 2016 -0500 Committer: Ted Ross <[email protected]> Committed: Wed Jan 27 08:48:41 2016 -0500 ---------------------------------------------------------------------- src/router_forwarders.c | 6 ++++++ 1 file changed, 6 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/01ac510c/src/router_forwarders.c ---------------------------------------------------------------------- diff --git a/src/router_forwarders.c b/src/router_forwarders.c index 5c6fe37..661bc82 100644 --- a/src/router_forwarders.c +++ b/src/router_forwarders.c @@ -144,6 +144,12 @@ static void forward_to_remote_subscribers_LH(qd_router_t *router, addr->deliveries_transit++; qd_link_activate(dest_link->link); + + // + // If the fanout is single, exit the loop here. We only want to send one message copy. + // + if (QD_FANOUT(addr->semantics) == QD_FANOUT_SINGLE) + break; } } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
