From 939a9cda52af80ef2f3ec91412e4443e13cb613c Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Wed, 24 Oct 2012 14:33:16 +0000 Subject: Bug-869420 - QPID-4393: BrokerReplicator should call queue->bind, not exchange->bind In BrokerReplicator, there are a few places that it calls exchange->bind(). We're seeing some incorrect behavior during failover testing (e.g. an exchange shows that it has 5 bindings when there is really only 1) and we think we've narrowed it down to this. Instead of calling exchange->bind(), it should call queue->bind(). If you look at qpid::broker::Broker::createObject(), you'll see that this method calls queue->bind() to bind a queue to an exchange. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1401710 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/ha/BrokerReplicator.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'cpp') diff --git a/cpp/src/qpid/ha/BrokerReplicator.cpp b/cpp/src/qpid/ha/BrokerReplicator.cpp index beeaa318cc..f451f7c420 100644 --- a/cpp/src/qpid/ha/BrokerReplicator.cpp +++ b/cpp/src/qpid/ha/BrokerReplicator.cpp @@ -628,7 +628,7 @@ void BrokerReplicator::doResponseBind(Variant::Map& values) { << " key:" << key); framing::FieldTable args; qpid::amqp_0_10::translate(asMapVoid(values[ARGUMENTS]), args); - exchange->bind(queue, key, &args); + queue->bind(exchange, key, args); } } -- cgit v1.2.1