From: Casey Bodley Date: Mon, 13 Mar 2017 18:51:17 +0000 (-0400) Subject: rgw: data sync includes instance in rgw_obj_index_key X-Git-Tag: v12.0.1~82^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=f332fb1c157986fb7d1f3c880096f4c463dcf4db;p=ceph-ci.git rgw: data sync includes instance in rgw_obj_index_key this was breaking the versioned object test in test_multi.py, because we were trying to create delete markers instead of unlinking a specific object instance Signed-off-by: Casey Bodley --- diff --git a/src/rgw/rgw_data_sync.cc b/src/rgw/rgw_data_sync.cc index 732fa8114d7..c11ebf83946 100644 --- a/src/rgw/rgw_data_sync.cc +++ b/src/rgw/rgw_data_sync.cc @@ -2523,10 +2523,10 @@ int RGWBucketShardIncrementalSyncCR::operate() } inc_marker.position = cur_id; - if (!key.set(rgw_obj_index_key(entries_iter->object))) { - set_status() << "parse_raw_oid() on " << entries_iter->object << " returned false, skipping entry"; - ldout(sync_env->cct, 20) << "parse_raw_oid() on " << entries_iter->object << " returned false, skipping entry" << dendl; - marker_tracker.try_update_high_marker(cur_id, 0, entries_iter->timestamp); + if (!key.set(rgw_obj_index_key{entry->object, entry->instance})) { + set_status() << "parse_raw_oid() on " << entry->object << " returned false, skipping entry"; + ldout(sync_env->cct, 20) << "parse_raw_oid() on " << entry->object << " returned false, skipping entry" << dendl; + marker_tracker.try_update_high_marker(cur_id, 0, entry->timestamp); continue; }