]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
librados: remove use of snapid_t
authorYehuda Sadeh <yehuda@hq.newdream.net>
Fri, 23 Jul 2010 18:43:25 +0000 (11:43 -0700)
committerYehuda Sadeh <yehuda@hq.newdream.net>
Fri, 23 Jul 2010 18:43:25 +0000 (11:43 -0700)
src/include/librados.hpp
src/librados.cc
src/rbd.cc

index 950b3941a72e2bdd70c16597044ac2a885fc9a10..b0d3622e8715eb3f1b928c7a293374377b82238e 100644 (file)
@@ -37,8 +37,8 @@ namespace librados {
   typedef void (*callback_t)(completion_t cb, void *arg);
 
   struct SnapContext {
-    snapid_t seq;
-    vector<snapid_t> snaps;
+    snap_t seq;
+    vector<snap_t> snaps;
   };
 
 
index 02d078a561d7f507d3984f40cd787b63ae25afff..7ddf4c54e9ccd84093eecedb630eb4134070918d 100644 (file)
@@ -1544,7 +1544,11 @@ int Rados::selfmanaged_snap_rollback_object(const rados_pool_t pool,
   ::SnapContext sn;
   if (!client) return -EINVAL;
   sn.seq = snapc.seq;
-  sn.snaps = snapc.snaps;
+  sn.snaps.clear();
+  vector<snap_t>::iterator iter = snapc.snaps.begin();
+  for (; iter != snapc.snaps.end(); ++iter) {
+    sn.snaps.push_back(*iter);
+  }
   return ((RadosClient *)client)->selfmanaged_snap_rollback_object(pool, oid, sn, snapid);
 }
 
index 81dd4487c9d09c453013b1f19cd87dca97fbd011..07849edc58898efd8248539d4eab7d0afbfb5643 100644 (file)
@@ -284,7 +284,11 @@ static int rollback_image(pools_t& pp, struct rbd_obj_header_ondisk *header,
     string oid = get_block_oid(header, i);
     librados::SnapContext sn;
     sn.seq = snapc.seq;
-    sn.snaps = snapc.snaps;
+    sn.snaps.clear();
+    vector<snapid_t>::iterator iter = snapc.snaps.begin();
+    for (; iter != snapc.snaps.end(); ++iter) {
+      sn.snaps.push_back(*iter);
+    }
     r = rados.selfmanaged_snap_rollback_object(pp.data, oid, sn, snapid);
     if (r < 0 && r != -ENOENT)
       return r;