From: Samuel Just Date: Fri, 2 Apr 2021 23:06:14 +0000 (+0000) Subject: osd/PeeringState: fix get_backfill_priority min_size comparison X-Git-Tag: v17.1.0~2364^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=7b2e0f4fd1c9071495dae9189428aa1cb8774c30;p=ceph.git osd/PeeringState: fix get_backfill_priority min_size comparison acting has placeholders for ec, need to use actingset. Signed-off-by: Samuel Just --- diff --git a/src/osd/PeeringState.cc b/src/osd/PeeringState.cc index 4d3428976dfc..20bbc6793c42 100644 --- a/src/osd/PeeringState.cc +++ b/src/osd/PeeringState.cc @@ -1024,10 +1024,10 @@ unsigned PeeringState::get_backfill_priority() if (state & PG_STATE_FORCED_BACKFILL) { ret = OSD_BACKFILL_PRIORITY_FORCED; } else { - if (acting.size() < pool.info.min_size) { + if (actingset.size() < pool.info.min_size) { base = OSD_BACKFILL_INACTIVE_PRIORITY_BASE; // inactive: no. of replicas < min_size, highest priority since it blocks IO - ret = base + (pool.info.min_size - acting.size()); + ret = base + (pool.info.min_size - actingset.size()); } else if (is_undersized()) { // undersized: OSD_BACKFILL_DEGRADED_PRIORITY_BASE + num missing replicas