From 9400a8f33c8abb6053128eb0d0315e0c167766bb Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Sun, 15 Apr 2018 16:15:40 -0500 Subject: [PATCH] mon/OSDMonitor: move pool created check into caller This makes for less confusing debug output. Speaking from experience. Signed-off-by: Sage Weil --- src/mon/CreatingPGs.h | 18 +++++++----------- src/mon/OSDMonitor.cc | 11 +++++++---- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/src/mon/CreatingPGs.h b/src/mon/CreatingPGs.h index 51bc9902c5cf4..396ccf1cac53d 100644 --- a/src/mon/CreatingPGs.h +++ b/src/mon/CreatingPGs.h @@ -58,18 +58,14 @@ struct creating_pgs_t { } return false; } - bool create_pool(int64_t poolid, uint32_t pg_num, + void create_pool(int64_t poolid, uint32_t pg_num, epoch_t created, utime_t modified) { - if (created_pools.count(poolid) == 0) { - auto& c = queue[poolid]; - c.created = created; - c.modified = modified; - c.end = pg_num; - created_pools.insert(poolid); - return true; - } else { - return false; - } + ceph_assert(created_pools.count(poolid) == 0); + auto& c = queue[poolid]; + c.created = created; + c.modified = modified; + c.end = pg_num; + created_pools.insert(poolid); } unsigned remove_pool(int64_t removed_pool) { const unsigned total = pgs.size(); diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc index 6773a79203dac..92618e235b2e8 100644 --- a/src/mon/OSDMonitor.cc +++ b/src/mon/OSDMonitor.cc @@ -4083,6 +4083,10 @@ unsigned OSDMonitor::scan_for_creating_pgs( unsigned queued = 0; for (auto& p : pools) { int64_t poolid = p.first; + if (creating_pgs->created_pools.count(poolid)) { + dout(10) << __func__ << " already created " << poolid << dendl; + continue; + } const pg_pool_t& pool = p.second; int ruleno = osdmap.crush->find_rule(pool.get_crush_rule(), pool.get_type(), pool.get_size()); @@ -4103,10 +4107,9 @@ unsigned OSDMonitor::scan_for_creating_pgs( } dout(10) << __func__ << " queueing pool create for " << poolid << " " << pool << dendl; - if (creating_pgs->create_pool(poolid, pool.get_pg_num(), - created, modified)) { - queued++; - } + creating_pgs->create_pool(poolid, pool.get_pg_num(), + created, modified); + queued++; } return queued; } -- 2.39.5