]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mon: fix up update_from_paxos() methods
authorSage Weil <sage@newdream.net>
Fri, 11 Nov 2011 19:55:34 +0000 (11:55 -0800)
committerSage Weil <sage@newdream.net>
Fri, 11 Nov 2011 19:55:34 +0000 (11:55 -0800)
Make sure they behave when the initial state is learned from paxos.

Signed-off-by: Sage Weil <sage@newdream.net>
src/mon/AuthMonitor.cc
src/mon/LogMonitor.cc
src/mon/MDSMonitor.cc
src/mon/MonmapMonitor.cc
src/mon/OSDMonitor.cc
src/mon/PGMonitor.cc

index 41b37d79046cd9cc462af6c4c52b36a684580472..001a2c4ac2e25a76f532611c4c011c9e9750296d 100644 (file)
@@ -114,7 +114,8 @@ bool AuthMonitor::update_from_paxos()
   dout(10) << "AuthMonitor::update_from_paxos()" << dendl;
   version_t paxosv = paxos->get_version();
   version_t keys_ver = mon->key_server.get_ver();
-  if (paxosv == keys_ver) return true;
+  if (paxosv == keys_ver)
+    return true;
   assert(paxosv >= keys_ver);
 
   if (keys_ver == 0 && paxosv > 0) {
index dd088272717a4f8fbee5f1ec791fd0d5948a177d..47e0a1a7b2387c7f3150ecf4c85b76c09288e805 100644 (file)
@@ -93,7 +93,8 @@ void LogMonitor::create_initial()
 bool LogMonitor::update_from_paxos()
 {
   version_t paxosv = paxos->get_version();
-  if (paxosv == summary.version) return true;
+  if (paxosv == summary.version)
+    return true;
   assert(paxosv >= summary.version);
 
   bufferlist blog;
@@ -103,7 +104,7 @@ bool LogMonitor::update_from_paxos()
   bufferlist blogerr;
   bufferlist blogsec;
 
-  if (summary.version == 0 && paxosv > 1) {
+  if (summary.version == 0 && paxosv > 0) {
     // startup: just load latest full map
     bufferlist latest;
     version_t v = paxos->get_latest(latest);
index 45434dbdd33e780b57ce70d857397e8ad7629b36..2b391dbee2c2bb95cb528ac5475cf6125f0dc6b3 100644 (file)
@@ -78,7 +78,8 @@ void MDSMonitor::create_initial()
 bool MDSMonitor::update_from_paxos()
 {
   version_t paxosv = paxos->get_version();
-  if (paxosv == mdsmap.epoch) return true;
+  if (paxosv == mdsmap.epoch)
+    return true;
   assert(paxosv >= mdsmap.epoch);
 
   dout(10) << "update_from_paxos paxosv " << paxosv 
index b180fcbee26e2e9ded8e62b4f32f849ee4845544..e525c34063510cb2d875bd31006c4e69dee61bf6 100644 (file)
@@ -62,7 +62,7 @@ bool MonmapMonitor::update_from_paxos()
     }
   }
 
-  while (paxosv > mon->monmap->get_epoch()) {
+  if (paxosv > mon->monmap->get_epoch()) {
     // read and decode
     monmap_bl.clear();
     bool success = paxos->read(paxosv, monmap_bl);
index 34942392050461b2283b21985d0b1f5209f7a09c..00e19e0f3c903e72057a5f3bb6972eb41556f836 100644 (file)
@@ -83,13 +83,14 @@ void OSDMonitor::create_initial()
 bool OSDMonitor::update_from_paxos()
 {
   version_t paxosv = paxos->get_version();
-  if (paxosv == osdmap.epoch) return true;
+  if (paxosv == osdmap.epoch)
+    return true;
   assert(paxosv >= osdmap.epoch);
 
   dout(15) << "update_from_paxos paxos e " << paxosv 
           << ", my e " << osdmap.epoch << dendl;
 
-  if (osdmap.epoch == 0 && paxosv > 1) {
+  if (osdmap.epoch == 0 && paxosv > 0) {
     // startup: just load latest full map
     bufferlist latest;
     version_t v = paxos->get_latest(latest);
index 201724cbeb8961a3fe1a46809d2f232e95450002..9d17cf6d19c6ba53715ef644b9f1beacfbeed5ab 100644 (file)
@@ -114,10 +114,11 @@ void PGMonitor::create_initial()
 bool PGMonitor::update_from_paxos()
 {
   version_t paxosv = paxos->get_version();
-  if (paxosv == pg_map.version) return true;
+  if (paxosv == pg_map.version)
+    return true;
   assert(paxosv >= pg_map.version);
 
-  if (pg_map.version == 0 && paxosv > 1) {
+  if (pg_map.version == 0 && paxosv > 0) {
     // starting up: load latest
     bufferlist latest;
     version_t v = paxos->get_latest(latest);
@@ -130,7 +131,7 @@ bool PGMonitor::update_from_paxos()
        pg_map = tmp_pg_map;
       }
       catch (const std::exception &e) {
-       dout(0) << "PGMonitor::update_from_paxos: error parsing update: "
+       dout(0) << "update_from_paxos: error parsing update: "
                << e.what() << dendl;
        return false;
       }
@@ -151,7 +152,7 @@ bool PGMonitor::update_from_paxos()
       inc.decode(p);
     }
     catch (const std::exception &e) {
-      dout(0) << "PGMonitor::update_from_paxos: error parsing "
+      dout(0) << "update_from_paxos: error parsing "
              << "incremental update: " << e.what() << dendl;
       return false;
     }