From 8c8e1d820b218f9ac2641a57af001a3c4c8f0824 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 19 Sep 2011 14:00:59 -0700 Subject: [PATCH] osd: clear need_up_thru in build_prior as appropriate The only time need_up_thru is cleared is in the Peering state AdvMap handler, but it doesn't get called if prior_set_affected() and we go into build_prior(). Build_prior() sets need_up_thru if it's needed, but it doesn't clear it if its not, which means the pg never goes active. Reported-by: Sam Lang Signed-off-by: Sage Weil --- src/osd/PG.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/src/osd/PG.cc b/src/osd/PG.cc index f1da29adde23d..fa3dbd803a91c 100644 --- a/src/osd/PG.cc +++ b/src/osd/PG.cc @@ -1218,6 +1218,7 @@ void PG::build_prior(std::auto_ptr &prior_set) dout(10) << "up_thru " << osd->osdmap->get_up_thru(osd->whoami) << " >= same_since " << info.history.same_acting_since << ", all is well" << dendl; + need_up_thru = false; } } -- 2.39.5