From c5b4e53e29ed8f2b6e0bad29754964b958e8240e Mon Sep 17 00:00:00 2001 From: lmgdlmgd Date: Tue, 6 Sep 2022 15:32:54 +0800 Subject: [PATCH] osd: set per_pool_stats true when OSD has no PG if per_pool_stats is false when OSD has no PG, osd_sum.num_osds not equals osd_sum.num_per_pool_osds, then ceph df command return STORED == USED, this is not our expectation Signed-off-by: jindengke Signed-off-by: lmgdlmgd --- src/osd/OSD.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 4e457cacc66..af3003db031 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -7559,16 +7559,16 @@ MPGStats* OSD::collect_pg_stats() }); } store_statfs_t st; - bool per_pool_stats = false; + bool per_pool_stats = true; bool per_pool_omap_stats = false; for (auto p : pool_set) { int r = store->pool_statfs(p, &st, &per_pool_omap_stats); if (r == -ENOTSUP) { + per_pool_stats = false; break; } else { assert(r >= 0); m->pool_stat[p] = st; - per_pool_stats = true; } } -- 2.39.5