]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon/OSDMonitor: propagate new_removed_snaps to other tiers
authorSage Weil <sage@redhat.com>
Sun, 5 Nov 2017 04:42:06 +0000 (23:42 -0500)
committerSage Weil <sage@redhat.com>
Sat, 2 Dec 2017 03:27:02 +0000 (21:27 -0600)
Signed-off-by: Sage Weil <sage@redhat.com>
src/osd/OSDMap.cc

index 5b9cf4a53b780880d8945f12b53df3d697695c09..4cb03d2660c7cd3c899e90fbd65043fa73a8c2b7 100644 (file)
@@ -206,6 +206,8 @@ int OSDMap::Incremental::propagate_snaps_to_tiers(CephContext *cct,
     if (!new_pool.second.tiers.empty()) {
       pg_pool_t& base = new_pool.second;
 
+      auto new_rem_it = new_removed_snaps.find(new_pool.first);
+
       for (const auto &tier_pool : base.tiers) {
        const auto &r = new_pools.find(tier_pool);
        pg_pool_t *tier = 0;
@@ -230,6 +232,10 @@ int OSDMap::Incremental::propagate_snaps_to_tiers(CephContext *cct,
        tier->snap_epoch = base.snap_epoch;
        tier->snaps = base.snaps;
        tier->removed_snaps = base.removed_snaps;
+
+       if (new_rem_it != new_removed_snaps.end()) {
+         new_removed_snaps[tier_pool] = new_rem_it->second;
+       }
       }
     }
   }