From: Prasad Krishnan Date: Sun, 23 Feb 2020 06:09:49 +0000 (+0530) Subject: RGW:Multisite: Verify if the synced object is identical to source X-Git-Tag: v14.2.17~32^2~14 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f1064169f38a2d674e8cac48cd17307ed859b962;p=ceph.git RGW:Multisite: Verify if the synced object is identical to source Introduce an option 'rgw_copy_verify_object' which allows the object copied from remote cluster through multisite sync is identical to the source object. This is done by generating the MD5 checksum of the data being copied and compared to the ETAG stored as part of the object's attribute. Signed-off-by: Prasad Krishnan (cherry picked from commit 23fb5d7b786f1034a02c991c6a648e455b5b9c30) Conflicts: src/rgw/rgw_rados.cc --- diff --git a/src/common/legacy_config_opts.h b/src/common/legacy_config_opts.h index d4c6a8e908dd..774e88659ab1 100644 --- a/src/common/legacy_config_opts.h +++ b/src/common/legacy_config_opts.h @@ -1476,6 +1476,7 @@ OPTION(rgw_curl_low_speed_limit, OPT_INT) // low speed limit for certain curl ca OPTION(rgw_curl_low_speed_time, OPT_INT) // low speed time for certain curl calls OPTION(rgw_copy_obj_progress, OPT_BOOL) // should dump progress during long copy operations? OPTION(rgw_copy_obj_progress_every_bytes, OPT_INT) // min bytes between copy progress output +OPTION(rgw_copy_verify_object, OPT_BOOL) // verify if the copied object is identical to source OPTION(rgw_obj_tombstone_cache_size, OPT_INT) // how many objects in tombstone cache, which is used in multi-zone sync to keep // track of removed objects' mtime diff --git a/src/common/options.cc b/src/common/options.cc index b031cf0ada39..4f4008237082 100644 --- a/src/common/options.cc +++ b/src/common/options.cc @@ -6643,6 +6643,13 @@ std::vector