From 0e9d64387547f4586194f1a41f21ff07462d8d34 Mon Sep 17 00:00:00 2001 From: David Zafman Date: Wed, 31 Jan 2018 18:31:15 -0800 Subject: [PATCH] osd: Always build peer_missing (including strays) for _update_calc_stats() Fixes: http://tracker.ceph.com/issues/22837 Signed-off-by: David Zafman --- src/osd/PG.cc | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/osd/PG.cc b/src/osd/PG.cc index 0e80ad9dae10b..ee65daf2a3ae7 100644 --- a/src/osd/PG.cc +++ b/src/osd/PG.cc @@ -712,7 +712,6 @@ void PG::discover_all_missing(map > &query_map) { auto &missing = pg_log.get_missing(); uint64_t unfound = get_num_unfound(); - assert(unfound > 0); dout(10) << __func__ << " " << missing.num_missing() << " missing, " @@ -1882,8 +1881,8 @@ void PG::activate(ObjectStore::Transaction& t, build_might_have_unfound(); - if (have_unfound()) - discover_all_missing(query_map); + // Always call now so _update_calc_stats() will be accurate + discover_all_missing(query_map); } // num_objects_degraded if calculated should reflect this too, unless no -- 2.39.5