From: Sage Weil Date: Tue, 24 Sep 2019 17:05:24 +0000 (-0500) Subject: osd/PeeringState: skip wait state if osd set is empty X-Git-Tag: v15.1.0~1379^2~3 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=405994628942b73515e4eaf2ba181c38bbeae989;p=ceph-ci.git osd/PeeringState: skip wait state if osd set is empty If there are no down OSDs from prior intervals, then the normal peering process will end up contacting all of the prior OSDs and ensuring that their prior interval is terminated during peering. Signed-off-by: Sage Weil --- diff --git a/src/osd/PeeringState.cc b/src/osd/PeeringState.cc index dd0ba2cd1e4..19be27bea48 100644 --- a/src/osd/PeeringState.cc +++ b/src/osd/PeeringState.cc @@ -6255,6 +6255,11 @@ PeeringState::GetInfo::GetInfo(my_context ctx) prior_set = ps->build_prior(); ps->prior_readable_down_osds = prior_set.down; + if (ps->prior_readable_down_osds.empty()) { + psdout(10) << " no prior_set down osds, clearing prior_readable_until_ub" + << dendl; + ps->clear_prior_readable_until_ub(); + } ps->reset_min_peer_features(); get_infos();