]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: update bucket index marker before skipping entries
authorYehuda Sadeh <yehuda@redhat.com>
Thu, 3 Dec 2015 19:02:44 +0000 (11:02 -0800)
committerYehuda Sadeh <yehuda@redhat.com>
Fri, 12 Feb 2016 00:13:41 +0000 (16:13 -0800)
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
src/rgw/rgw_data_sync.cc

index 5701af8ba0903668de07d03cbd379116aba8752d..3d09d25eb209876ae58170262af092b70e1826b4 100644 (file)
@@ -2092,6 +2092,7 @@ int RGWBucketShardIncrementalSyncCR::operate()
         key = rgw_obj_key(entries_iter->object, entries_iter->instance);
         entry = &(*entries_iter);
         set_status() << "got entry.id=" << entry->id << " key=" << key << " op=" << (int)entry->op;
+        inc_marker.position = entry->id;
         if (entry->op == CLS_RGW_OP_CANCEL) {
           set_status() << "canceled operation, skipping";
           ldout(store->ctx(), 20) << "[inc sync] skipping object: " << bucket_name << ":" << bucket_id << ":" << shard_id << "/" << key << ": canceled operation" << dendl;
@@ -2103,7 +2104,6 @@ int RGWBucketShardIncrementalSyncCR::operate()
           continue;
         }
         ldout(store->ctx(), 20) << "[inc sync] syncing object: " << bucket_name << ":" << bucket_id << ":" << shard_id << "/" << key << dendl;
-        inc_marker.position = entry->id;
         updated_status = false;
         while (!marker_tracker->can_do_op(key, entry->op)) {
           if (!updated_status) {