]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
osd/PeeringState.cc: skip peer_purged when discovering all missing 33329/head
authorNeha <nojha@redhat.com>
Wed, 11 Dec 2019 23:47:19 +0000 (23:47 +0000)
committerNathan Cutler <ncutler@suse.com>
Fri, 14 Feb 2020 14:17:43 +0000 (15:17 +0100)
commit09739a6611c0470074613f50cec90fb486403376
treed5616fca5a0aa55f865b284ea2c98434cbec6f71
parentd960563efabca8f69d3fdc34444e49bced5a65e8
osd/PeeringState.cc: skip peer_purged when discovering all missing

We hit a couple of bugs because in discover_all_missing() we send
pg_query to an OSD that was marked stray and already got purged. This results
in a state machine crash on the purged OSD. Fix this by skipping any
purged peers.

Fixes: https://tracker.ceph.com/issues/41317
Fixes: https://tracker.ceph.com/issues/40963
Signed-off-by: Neha Ojha <nojha@redhat.com>
(cherry picked from commit 4960f579a234f9984d73767fde073c419e884c17)

Conflicts:
src/osd/PeeringState.cc
- file does not exist in mimic; made the changes manually in
  src/osd/PG.cc
src/osd/PG.cc