summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2011-04-19 20:55:50 +0000
committerAlan Conway <aconway@apache.org>2011-04-19 20:55:50 +0000
commit4eba518eaddeee75ac2a3dfff610cd29e87f7aae (patch)
treee48944f8982914a21df66f9c9bbe320c83b6adf1
parent9b2dd11a547cf28ddb189fbd3f9c7427b11f81ed (diff)
downloadqpid-python-4eba518eaddeee75ac2a3dfff610cd29e87f7aae.tar.gz
QPID-3217: Exchanges with IVE option cause cluster inconsistencies in updatees
Since this option is rarely used, the short term fix is to disallow IVE in a cluster. This is not a regression since it didn't work anyway. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1095209 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--cpp/src/qpid/broker/Exchange.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/cpp/src/qpid/broker/Exchange.cpp b/cpp/src/qpid/broker/Exchange.cpp
index 6144f4f87f..622cc81002 100644
--- a/cpp/src/qpid/broker/Exchange.cpp
+++ b/cpp/src/qpid/broker/Exchange.cpp
@@ -201,7 +201,11 @@ Exchange::Exchange(const string& _name, bool _durable, const qpid::framing::Fiel
}
ive = _args.get(qpidIVE);
- if (ive) QPID_LOG(debug, "Configured exchange " << _name << " with Initial Value");
+ if (ive) {
+ if (broker && broker->isInCluster())
+ throw framing::NotImplementedException("Cannot use Initial Value Exchanges in a cluster");
+ QPID_LOG(debug, "Configured exchange " << _name << " with Initial Value");
+ }
}
Exchange::~Exchange ()