Author: gsim
Date: Thu Nov 13 04:43:26 2008
New Revision: 713714
URL: http://svn.apache.org/viewvc?rev=713714&view=rev
Log:
QPID-1414: fix to prevent concurrent modification of brokers known url list
Modified:
incubator/qpid/trunk/qpid/cpp/src/qpid/broker/Broker.cpp
Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/Broker.cpp
URL:
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/Broker.cpp?rev=713714&r1=713713&r2=713714&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/Broker.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/Broker.cpp Thu Nov 13
04:43:26 2008
@@ -239,6 +239,13 @@
if (conf.queueCleanInterval) {
queueCleaner.start(conf.queueCleanInterval * qpid::sys::TIME_SEC);
}
+
+ //initialize known broker urls:
+ try {
+ knownBrokers.push_back ( qpid::Url::getIpAddressesUrl (
getPort(TCP_TRANSPORT) ) );
+ } catch (const NoSuchTransportException& e) {
+ QPID_LOG(error, "Could not send client known broker urls for cluster:
" << e.what());
+ }
}
void Broker::declareStandardExchange(const std::string& name, const
std::string& type)
@@ -430,13 +437,7 @@
std::vector<Url>
Broker::getKnownBrokersImpl()
{
- knownBrokers.clear();
- try {
- knownBrokers.push_back ( qpid::Url::getIpAddressesUrl (
getPort(TCP_TRANSPORT) ) );
- } catch (const NoSuchTransportException& e) {
- QPID_LOG(error, "Could not send client known broker urls for cluster: "
<< e.what());
- }
- return knownBrokers;
+ return knownBrokers;
}
const std::string Broker::TCP_TRANSPORT("tcp");