From d78aa3f4d4e283726d9c3b35a477b238df6b5af1 Mon Sep 17 00:00:00 2001 From: Casey Bodley Date: Fri, 1 Nov 2019 10:48:41 -0400 Subject: [PATCH] rgw: allow apply_olh_log to rewrite the same olh version if two zones write an object version with the same olh epoch, apply_olh_log needs to be able to write the more-current instance at the same epoch Fixes: https://tracker.ceph.com/issues/39142 Signed-off-by: Casey Bodley --- src/rgw/rgw_rados.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rgw/rgw_rados.cc b/src/rgw/rgw_rados.cc index acaab993e627..16014ed34632 100644 --- a/src/rgw/rgw_rados.cc +++ b/src/rgw/rgw_rados.cc @@ -6797,7 +6797,7 @@ int RGWRados::apply_olh_log(RGWObjectCtx& obj_ctx, RGWObjState& state, const RGW map >::iterator iter = log.begin(); op.cmpxattr(RGW_ATTR_OLH_ID_TAG, CEPH_OSD_CMPXATTR_OP_EQ, olh_tag); - op.cmpxattr(RGW_ATTR_OLH_VER, CEPH_OSD_CMPXATTR_OP_GT, last_ver); + op.cmpxattr(RGW_ATTR_OLH_VER, CEPH_OSD_CMPXATTR_OP_GTE, last_ver); bufferlist ver_bl; string last_ver_s = to_string(last_ver); -- 2.47.3