]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
mon/OSDMonitor: tolerate duplicate MRemoveSnaps messages
authorSage Weil <sage@redhat.com>
Mon, 15 Jul 2019 17:48:40 +0000 (12:48 -0500)
committerSage Weil <sage@redhat.com>
Mon, 15 Jul 2019 17:48:40 +0000 (12:48 -0500)
Fixes: http://tracker.ceph.com/issues/40774
Signed-off-by: Sage Weil <sage@redhat.com>
src/mon/OSDMonitor.cc

index 86d9eb486e2c9c6b3e465cca5c983160aeaa7c0d..0bc73206f8e627636fe779751786fffb86104fad 100644 (file)
@@ -3723,7 +3723,9 @@ bool OSDMonitor::prepare_remove_snaps(MonOpRequestRef op)
     for (auto s : snaps) {
       if (!_is_removed_snap(pool, s) &&
          (!pending_inc.new_pools.count(pool) ||
-          !pending_inc.new_pools[pool].removed_snaps.contains(s))) {
+          !pending_inc.new_pools[pool].removed_snaps.contains(s)) &&
+         (!pending_inc.new_removed_snaps.count(pool) ||
+          !pending_inc.new_removed_snaps[pool].contains(s))) {
        pg_pool_t *newpi = pending_inc.get_new_pool(pool, &pi);
        if (osdmap.require_osd_release < ceph_release_t::octopus) {
          newpi->removed_snaps.insert(s);