From: Matt Benjamin Date: Mon, 10 Apr 2023 18:08:39 +0000 (-0400) Subject: rgwlc: split versioned and non-versioned transition notifications X-Git-Tag: v19.0.0~159^2~4 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=c566782db0837af37337078fc62f5403ef0fb91b;p=ceph-ci.git rgwlc: split versioned and non-versioned transition notifications Signed-off-by: Matt Benjamin --- diff --git a/src/rgw/rgw_lc.cc b/src/rgw/rgw_lc.cc index 77410c9f010..42ce1b9cffa 100644 --- a/src/rgw/rgw_lc.cc +++ b/src/rgw/rgw_lc.cc @@ -1295,13 +1295,20 @@ public: /* If bucket is versioned, create delete_marker for current version */ - if (oc.bucket->versioned() && oc.o.is_current() && !oc.o.is_delete_marker()) { - ret = remove_expired_obj(oc.dpp, oc, false, rgw::notify::ObjectTransitionCurrent); - ldpp_dout(oc.dpp, 20) << "delete_tier_obj Object(key:" << oc.o.key << ") current & not delete_marker" << " versioned_epoch: " << oc.o.versioned_epoch << "flags: " << oc.o.flags << dendl; + if (! oc.bucket->versioned()) { + ret = remove_expired_obj(oc.dpp, oc, false, rgw::notify::ObjectTransition); + ldpp_dout(oc.dpp, 20) << "delete_tier_obj Object(key:" << oc.o.key << ") not versioned flags: " << oc.o.flags << dendl; } else { - ret = remove_expired_obj(oc.dpp, oc, true, rgw::notify::ObjectTransitionNoncurrent); - ldpp_dout(oc.dpp, 20) << "delete_tier_obj Object(key:" << oc.o.key << ") not current " << "versioned_epoch: " << oc.o.versioned_epoch << "flags: " << oc.o.flags << dendl; + /* versioned */ + if (oc.o.is_current() && !oc.o.is_delete_marker()) { + ret = remove_expired_obj(oc.dpp, oc, false, rgw::notify::ObjectTransitionCurrent); + ldpp_dout(oc.dpp, 20) << "delete_tier_obj Object(key:" << oc.o.key << ") current & not delete_marker" << " versioned_epoch: " << oc.o.versioned_epoch << "flags: " << oc.o.flags << dendl; + } else { + ret = remove_expired_obj(oc.dpp, oc, true, rgw::notify::ObjectTransitionNoncurrent); + ldpp_dout(oc.dpp, 20) << "delete_tier_obj Object(key:" << oc.o.key << ") not current " << "versioned_epoch: " << oc.o.versioned_epoch << "flags: " << oc.o.flags << dendl; + } } + return ret; }