]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mon/OSDMonitor: propagate snap updates to tier pools on update
authorSage Weil <sage@inktank.com>
Thu, 19 Dec 2013 23:01:26 +0000 (15:01 -0800)
committerSage Weil <sage@inktank.com>
Sun, 22 Dec 2013 17:49:24 +0000 (09:49 -0800)
For any pg_pool_t update, verify that any changes to the pool snapshot
metadata are propagated to the tiers.

Signed-off-by: Sage Weil <sage@inktank.com>
src/mon/OSDMonitor.cc
src/osd/OSDMap.cc

index 7d2ca25b9dbc05e3271267f47d284c63fd2a6cf5..2407b5763504a268b36d9b4fc27aca7eb335c4af 100644 (file)
@@ -554,6 +554,8 @@ void OSDMonitor::encode_pending(MonitorDBStore::Transaction *t)
   // finalize up pending_inc
   pending_inc.modified = ceph_clock_now(g_ceph_context);
 
+  pending_inc.propagate_snaps_to_tiers(osdmap);
+
   bufferlist bl;
 
   // tell me about it
index a09ccf072ed10663a26d847310f5ce74f0d95960..c4c1b44da6626ff8b7103bdcf9f235f27af85021 100644 (file)
@@ -190,8 +190,8 @@ int OSDMap::Incremental::propagate_snaps_to_tiers(const OSDMap& osdmap)
            return -EIO;
 
          // skip update?
-         if (tier->snap_seq == base.snap_seq &&
-             tier->snap_epoch == base.snap_epoch)
+         if (orig->snap_seq == base.snap_seq &&
+             orig->snap_epoch == base.snap_epoch)
            continue;
 
          tier = get_new_pool(*q, orig);