]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mon/PGMap: fix incorrect pg_pool_sum when delete pool 31704/head
authorluo rixin <luorixin@huawei.com>
Tue, 12 Nov 2019 08:36:53 +0000 (16:36 +0800)
committerNathan Cutler <ncutler@suse.com>
Mon, 18 Nov 2019 08:30:30 +0000 (09:30 +0100)
commitb242bdc70c2585b50415e3dd1b04d5ab9d494013
tree50349f4d8ac3c3061414c6c8f6e5f0ea91d7a725
parent95bbbc09d6caab8d6063373dffb0bdd73ecdae43
mon/PGMap: fix incorrect pg_pool_sum when delete pool

We found the pools num diplayed by "ceph -s" is not the same with
"ceph osd lspools" after deleting a pool sometime. The result is
Mgr ClusterState::ingest_pgstats get the old pg_stat which pg is
not deleted in some osd before the pool deleted and add to
pending_inc.pool_statfs_updates. The deleted pool will be added to
pg_pool_sum unconsciously by PGMap::apply_incremental and which has
been deleted in OSDMap. This will also casue MON's Segmentation
fault.

Fixes: https://tracker.ceph.com/issues/42689
Fixes: https://tracker.ceph.com/issues/42592
Fixes: https://tracker.ceph.com/issues/41228
Fixes: https://tracker.ceph.com/issues/40011
Signed-off-by: luo rixin <luorixin@huawei.com>
(cherry picked from commit 446eca8defddda44fea7c789065afdb1a9d38dae)
src/mon/PGMap.cc