You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2010/03/31 18:52:51 UTC

svn commit: r929616 - in /qpid/trunk/qpid/cpp: src/qpid/cluster/ src/tests/ xml/

Author: aconway
Date: Wed Mar 31 16:52:50 2010
New Revision: 929616

URL: http://svn.apache.org/viewvc?rev=929616&view=rev
Log:
Cluster: remove un-necessary code for config-seq.

Modified:
    qpid/trunk/qpid/cpp/src/qpid/cluster/Cluster.cpp
    qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.cpp
    qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.h
    qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.cpp
    qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.h
    qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.cpp
    qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.h
    qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp
    qpid/trunk/qpid/cpp/xml/cluster.xml

Modified: qpid/trunk/qpid/cpp/src/qpid/cluster/Cluster.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/cluster/Cluster.cpp?rev=929616&r1=929615&r2=929616&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/cluster/Cluster.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/cluster/Cluster.cpp Wed Mar 31 16:52:50 2010
@@ -638,8 +638,6 @@ void Cluster::initMapCompleted(Lock& l) 
         }
         else {                  // I can go ready.
             discarding = false;
-            map.resetConfigSeq(); // Start from config-seq = 0
-            store.setConfigSeq(map.getConfigSeq());
             setReady(l);
             memberUpdate(l);
             mcast.mcastControl(ClusterReadyBody(ProtocolVersion(), myUrl.str()), self);
@@ -658,8 +656,7 @@ void Cluster::configChange(const MemberI
     MemberSet members = decodeMemberSet(membersStr);
     MemberSet left = decodeMemberSet(leftStr);
     MemberSet joined = decodeMemberSet(joinedStr);
-    QPID_LOG(notice, *this << " Membership update " << map.getConfigSeq() << ": "
-             << members);
+    QPID_LOG(notice, *this << " Membership update: " << members);
     QPID_LOG_IF(notice, !left.empty(), *this << " Members left: " << left);
     QPID_LOG_IF(notice, !joined.empty(), *this << " Members joined: " << joined);
 
@@ -671,7 +668,6 @@ void Cluster::configChange(const MemberI
         return;
     }
     bool memberChange = map.configChange(members);
-    store.setConfigSeq(map.getConfigSeq());
 
     // Update initital status for members joining or leaving.
     initMap.configChange(members);

Modified: qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.cpp?rev=929616&r1=929615&r2=929616&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.cpp Wed Mar 31 16:52:50 2010
@@ -57,17 +57,16 @@ void assignFieldTable(FieldTable& ft, co
 
 }
 
-ClusterMap::ClusterMap() : frameSeq(0), configSeq(0) {}
+ClusterMap::ClusterMap() : frameSeq(0) {}
 
-ClusterMap::ClusterMap(const Map& map) : frameSeq(0), configSeq(0) {
+ClusterMap::ClusterMap(const Map& map) : frameSeq(0) {
     transform(map.begin(), map.end(), inserter(alive, alive.begin()), bind(&Map::value_type::first, _1));
     members = map;
 }
 
 ClusterMap::ClusterMap(const FieldTable& joinersFt, const FieldTable& membersFt,
-                       framing::SequenceNumber frameSeq_,
-                       framing::SequenceNumber configSeq_)
-    : frameSeq(frameSeq_), configSeq(configSeq_)
+                       framing::SequenceNumber frameSeq_)
+    : frameSeq(frameSeq_)
 {
     for_each(joinersFt.begin(), joinersFt.end(), bind(&addFieldTableValue, _1, ref(joiners), ref(alive)));
     for_each(membersFt.begin(), membersFt.end(), bind(&addFieldTableValue, _1, ref(members), ref(alive)));
@@ -83,7 +82,6 @@ void ClusterMap::toMethodBody(framing::C
     b.getMembers().clear();
     for_each(members.begin(), members.end(), bind(&insertFieldTableFromMapValue, ref(b.getMembers()), _1));
     b.setFrameSeq(frameSeq);
-    b.setConfigSeq(configSeq);
 }
 
 Url ClusterMap::getUrl(const Map& map, const  MemberId& id) {
@@ -136,7 +134,7 @@ ostream& operator<<(ostream& o, const Cl
         else o << "(unknown)";
         o << " ";
     }
-    o << "frameSeq=" << m.getFrameSeq() << " configSeq=" << m.getConfigSeq();
+    o << "frameSeq=" << m.getFrameSeq();
     return o;
 }
 
@@ -157,7 +155,6 @@ bool ClusterMap::ready(const MemberId& i
 }
 
 bool ClusterMap::configChange(const Set& update) {
-    ++configSeq;
     bool memberChange = false;
     Set removed;
     set_difference(alive.begin(), alive.end(),

Modified: qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.h
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.h?rev=929616&r1=929615&r2=929616&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/cluster/ClusterMap.h Wed Mar 31 16:52:50 2010
@@ -50,7 +50,7 @@ class ClusterMap {
     ClusterMap();
     ClusterMap(const Map& map);
     ClusterMap(const framing::FieldTable& joiners, const framing::FieldTable& members,
-               framing::SequenceNumber frameSeq, framing::SequenceNumber configSeq);
+               framing::SequenceNumber frameSeq);
 
     /** Update from config change.
      *@return true if member set changed.
@@ -86,8 +86,6 @@ class ClusterMap {
 
     framing::SequenceNumber getFrameSeq() const { return frameSeq; }
     framing::SequenceNumber incrementFrameSeq() { return ++frameSeq; }
-    framing::SequenceNumber getConfigSeq() const { return configSeq; }
-    void resetConfigSeq() { configSeq = 0; }
     
     /** Clear out all knowledge of joiners & members, just keep alive set */
     void clearStatus() { joiners.clear(); members.clear(); }
@@ -97,7 +95,7 @@ class ClusterMap {
     
     Map joiners, members;
     Set alive;
-    framing::SequenceNumber frameSeq, configSeq;
+    framing::SequenceNumber frameSeq;
 
   friend std::ostream& operator<<(std::ostream&, const Map&);
   friend std::ostream& operator<<(std::ostream&, const ClusterMap&);

Modified: qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.cpp?rev=929616&r1=929615&r2=929616&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.cpp Wed Mar 31 16:52:50 2010
@@ -381,11 +381,10 @@ void Connection::shadowReady(
 }
 
 void Connection::membership(const FieldTable& joiners, const FieldTable& members,
-                            const framing::SequenceNumber& frameSeq,
-                            const framing::SequenceNumber& configSeq)
+                            const framing::SequenceNumber& frameSeq)
 {
     QPID_LOG(debug, cluster << " incoming update complete on connection " << *this);
-    cluster.updateInDone(ClusterMap(joiners, members, frameSeq, configSeq));
+    cluster.updateInDone(ClusterMap(joiners, members, frameSeq));
     updateIn.consumerNumbering.clear();
     self.second = 0;        // Mark this as completed update connection.
 }

Modified: qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.h
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.h?rev=929616&r1=929615&r2=929616&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/cluster/Connection.h Wed Mar 31 16:52:50 2010
@@ -130,8 +130,7 @@ class Connection :
                      uint32_t sendMax);
 
     void membership(const framing::FieldTable&, const framing::FieldTable&,
-                    const framing::SequenceNumber& frameSeq,
-                    const framing::SequenceNumber& configSeq);
+                    const framing::SequenceNumber& frameSeq);
 
     void retractOffer();
 

Modified: qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.cpp?rev=929616&r1=929615&r2=929616&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.cpp Wed Mar 31 16:52:50 2010
@@ -36,7 +36,7 @@ namespace fs=boost::filesystem;
 using namespace std;
 
 StoreStatus::StoreStatus(const std::string& d)
-    : state(STORE_STATE_NO_STORE), dataDir(d), configSeq(0)
+    : state(STORE_STATE_NO_STORE), dataDir(d)
 {}
 
 namespace {
@@ -44,7 +44,6 @@ namespace {
 const char* SUBDIR="cluster";
 const char* CLUSTER_ID_FILE="cluster.uuid";
 const char* SHUTDOWN_ID_FILE="shutdown.uuid";
-const char* CONFIG_SEQ_FILE="config.seq";
 
 void throw_exceptions(ios& ios) {
     // Have stream throw an exception on error.
@@ -104,7 +103,6 @@ void StoreStatus::load() {
         create_directory(dir);
         clusterId = loadUuid(dir/CLUSTER_ID_FILE);
         shutdownId = loadUuid(dir/SHUTDOWN_ID_FILE);
-        configSeq = loadSeqNum(dir/CONFIG_SEQ_FILE);
         if (clusterId && shutdownId) state = STORE_STATE_CLEAN_STORE;
         else if (clusterId) state = STORE_STATE_DIRTY_STORE;
         else state = STORE_STATE_EMPTY_STORE;
@@ -121,14 +119,6 @@ void StoreStatus::save() {
         create_directory(dir);
         saveUuid(dir/CLUSTER_ID_FILE, clusterId);
         saveUuid(dir/SHUTDOWN_ID_FILE, shutdownId);
-        try {
-            fs::ofstream o(dir/CONFIG_SEQ_FILE);
-            throw_exceptions(o);
-            o << configSeq.getValue();
-        } catch (const std::exception& e) {
-            QPID_LOG(error, "Cant save sequence number to " << (dir/CONFIG_SEQ_FILE).string() << ": " << e.what());
-            throw;
-        }
     }
     catch (const std::exception&e) {
         throw Exception(QPID_MSG("Cannot save cluster store status: " << e.what()));
@@ -156,11 +146,6 @@ void StoreStatus::clean(const Uuid& shut
     save();
 }
 
-void StoreStatus::setConfigSeq(framing::SequenceNumber seq) {
-    configSeq = seq;
-    save();
-}
-
 const char* stateName(StoreState s) {
     switch (s) {
       case STORE_STATE_NO_STORE: return "none";
@@ -177,8 +162,7 @@ ostream& operator<<(ostream& o, framing:
 ostream& operator<<(ostream& o, const StoreStatus& s) {
     o << s.getState();
     if (s.getState() ==  STORE_STATE_DIRTY_STORE)
-        o << " cluster-id=" << s.getClusterId()
-          << " config-sequence=" << s.getConfigSeq();
+        o << " cluster-id=" << s.getClusterId();
     if (s.getState() == STORE_STATE_CLEAN_STORE) {
         o << " cluster-id=" << s.getClusterId()
           << " shutdown-id=" << s.getShutdownId();

Modified: qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.h
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.h?rev=929616&r1=929615&r2=929616&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.h (original)
+++ qpid/trunk/qpid/cpp/src/qpid/cluster/StoreStatus.h Wed Mar 31 16:52:50 2010
@@ -47,11 +47,9 @@ class StoreStatus
 
     const Uuid& getClusterId() const { return clusterId; }
     const Uuid& getShutdownId() const { return shutdownId; }
-    framing::SequenceNumber getConfigSeq() const { return configSeq; }
 
     void dirty(const Uuid& clusterId);  // Mark the store in use by clusterId.
     void clean(const Uuid& shutdownId); // Mark the store clean at shutdownId
-    void setConfigSeq(framing::SequenceNumber seq); // Update the config seq number.
 
     void load();
     void save();
@@ -62,7 +60,6 @@ class StoreStatus
     framing::cluster::StoreState state;
     Uuid clusterId, shutdownId;
     std::string dataDir;
-    framing::SequenceNumber configSeq;
 };
 
 const char* stateName(framing::cluster::StoreState);

Modified: qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp?rev=929616&r1=929615&r2=929616&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp (original)
+++ qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp Wed Mar 31 16:52:50 2010
@@ -87,7 +87,7 @@ ClusterFixture::Args prepareArgs(const b
 }
 
 // Timeout for tests that wait for messages
-const sys::Duration TIMEOUT=sys::TIME_SEC/2;
+const sys::Duration TIMEOUT=2*sys::TIME_SEC;
 
 
 ostream& operator<<(ostream& o, const cpg_name* n) {

Modified: qpid/trunk/qpid/cpp/xml/cluster.xml
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/xml/cluster.xml?rev=929616&r1=929615&r2=929616&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/xml/cluster.xml (original)
+++ qpid/trunk/qpid/cpp/xml/cluster.xml Wed Mar 31 16:52:50 2010
@@ -224,7 +224,6 @@
       <field name="joiners" type="map"/> <!-- member-id -> URL -->
       <field name="members" type="map"/> <!-- member-id -> state -->
       <field name="frame-seq" type="sequence-no"/> <!-- frame sequence number -->
-      <field name="config-seq" type="sequence-no"/> <!-- config change seq no.-->
     </control>
 
     <!-- Updater cannot fulfill an update offer. -->



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org