From cb2321f7fa6821d6d96a790f403a65410e095654 Mon Sep 17 00:00:00 2001 From: Xuehan Xu Date: Wed, 24 Jun 2026 15:31:11 +0800 Subject: [PATCH] osd/OSDMap: fix the pgs_per_weight calculation error when multiple pools are being balanced Before this commit, When multiple pools are being balanced, pgs_per_weight only considers the last pool, which is wrong. Signed-off-by: Xuehan Xu --- src/osd/OSDMap.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/osd/OSDMap.cc b/src/osd/OSDMap.cc index 7579e054c8e..a82cb3cea68 100644 --- a/src/osd/OSDMap.cc +++ b/src/osd/OSDMap.cc @@ -6197,7 +6197,7 @@ float OSDMap::build_pool_pgs_info ( } total_pgs += pdata.get_size() * pdata.get_pg_num(); - osds_weight_total = get_osds_weight(cct, tmp_osd_map, pid, osds_weight); + osds_weight_total += get_osds_weight(cct, tmp_osd_map, pid, osds_weight); } for (auto& [oid, oweight] : osds_weight) { int pgs = 0; -- 2.47.3