]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mon/OSDMonitor: don't change in-memory state on prune 23742/head
authorJoao Eduardo Luis <joao@suse.de>
Sun, 26 Aug 2018 15:01:46 +0000 (16:01 +0100)
committerJoao Eduardo Luis <joao@suse.de>
Mon, 27 Aug 2018 23:12:50 +0000 (00:12 +0100)
commit8aa759054c22da40b03c6279d7dfd2ade5cfd944
tree705046b5b8fd874c5a876014442726732b3065f9
parent8b43b548a1ed6da49d82283f65ec70c9e3fe94fa
mon/OSDMonitor: don't change in-memory state on prune

We were modifying the in-memory state when running through several
osdmap pruning functions.

Should the transaction we're encoding not be committed, we may end up in
a state where we have a stale in-memory state that does not match what
is on disk; including having in-memory state while not having on-disk
state.

We prevent this sort of inconsistency by working on temporary states
instead.

Fixes: http://tracker.ceph.com/issues/24612
Signed-off-by: Joao Eduardo Luis <joao@suse.de>
src/mon/OSDMonitor.cc
src/mon/OSDMonitor.h