diff options
author | Alan Conway <aconway@apache.org> | 2012-10-24 14:33:16 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2012-10-24 14:33:16 +0000 |
commit | 939a9cda52af80ef2f3ec91412e4443e13cb613c (patch) | |
tree | 52bf2f241c689dbdafe328ad59bdfac956818175 /cpp | |
parent | eb6acf1347178746633d9cc5611034f505b8d98b (diff) | |
download | qpid-python-939a9cda52af80ef2f3ec91412e4443e13cb613c.tar.gz |
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
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/src/qpid/ha/BrokerReplicator.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
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); } } |