From ceaca9f10ac640f458e7d4e3d9e051cea6423e82 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 6 Aug 2014 14:02:17 -0700 Subject: [PATCH] osd/PG: set blocked_by during peering GetLog Signed-off-by: Sage Weil --- src/osd/PG.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/osd/PG.cc b/src/osd/PG.cc index 9c2b9f02486..d5a973655f6 100644 --- a/src/osd/PG.cc +++ b/src/osd/PG.cc @@ -6812,6 +6812,10 @@ PG::RecoveryState::GetLog::GetLog(my_context ctx) auth_log_shard.shard, pg->pg_whoami.shard, request_log_from, pg->info.history, pg->get_osdmap()->get_epoch())); + + assert(pg->blocked_by.empty()); + pg->blocked_by.insert(auth_log_shard.osd); + pg->publish_stats_to_osd(); } boost::statechart::result PG::RecoveryState::GetLog::react(const AdvMap& advmap) @@ -6878,6 +6882,8 @@ void PG::RecoveryState::GetLog::exit() PG *pg = context< RecoveryMachine >().pg; utime_t dur = ceph_clock_now(pg->cct) - enter_time; pg->osd->recoverystate_perf->tinc(rs_getlog_latency, dur); + pg->blocked_by.clear(); + pg->publish_stats_to_osd(); } /*------WaitActingChange--------*/ -- 2.47.3