From 4eba518eaddeee75ac2a3dfff610cd29e87f7aae Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Tue, 19 Apr 2011 20:55:50 +0000 Subject: 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 --- cpp/src/qpid/broker/Exchange.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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 () -- cgit v1.2.1