]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
PG: check_recovery_sources on each map
authorSamuel Just <sam.just@inktank.com>
Wed, 20 Jun 2012 16:29:18 +0000 (09:29 -0700)
committerSamuel Just <sam.just@inktank.com>
Fri, 29 Jun 2012 17:41:15 +0000 (10:41 -0700)
Signed-off-by: Samuel Just <sam.just@inktank.com>
src/osd/PG.cc

index 57fe824bf2968f99a298e0b5eeca1cf522a8dfcd..d211f8e886fa66ef3c50d09568a0abe9ffeced0e 100644 (file)
@@ -4162,6 +4162,7 @@ boost::statechart::result PG::RecoveryState::Active::react(const AdvMap& advmap)
     dout(10) << *pg << " snap_trimq now " << pg->snap_trimq << dendl;
     pg->dirty_info = true;
   }
+  pg->check_recovery_sources(pg->get_osdmap());
   return forward_event();
 }
     
@@ -4172,8 +4173,7 @@ boost::statechart::result PG::RecoveryState::Active::react(const ActMap&)
   assert(pg->is_active());
   assert(pg->is_primary());
 
-  if (pg->check_recovery_sources(pg->get_osdmap()) &&
-      pg->have_unfound()) {
+  if (pg->have_unfound()) {
     // object may have become unfound
     pg->discover_all_missing(*context< RecoveryMachine >().get_query_map());
   }