]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
PG: clear peering flag when we transition from Peering to Reset
authorJosh Durgin <josh.durgin@dreamhost.com>
Thu, 5 May 2011 23:28:06 +0000 (16:28 -0700)
committerJosh Durgin <josh.durgin@dreamhost.com>
Thu, 5 May 2011 23:35:45 +0000 (16:35 -0700)
This is safe because the only other transitions are to Pending (still
peering) and Active, which clears the state itself.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
src/osd/PG.cc

index 60bb1b89d3f731185a9de0a0bd0b879cdce5322e..865210657029fa4768f81ce9d94864f0425fe1d4 100644 (file)
@@ -3908,6 +3908,7 @@ PG::RecoveryState::Peering::react(const AdvMap& advmap) {
   dout(10) << "Peering advmap" << dendl;
   if (pg->prior_set_affected(*prior_set.get(), &advmap.osdmap)) {
     dout(1) << "Peering, priors_set_affected, going to Reset" << dendl;
+    pg->state_clear(PG_STATE_PEERING);
     post_event(advmap);
     return transit< Reset >();
   }