From 102eaa833d2b0c89a95a0e06876a16b3e2e6c6d8 Mon Sep 17 00:00:00 2001 From: Casey Bodley Date: Wed, 24 Sep 2025 13:20:09 -0400 Subject: [PATCH] rgw/lc: LCOpAction_CurrentExpiration checks mtime for delete markers the unconditional 'return true' for delete markers was causing check() to ignore the lifecycle policy's "Days" field, causing delete markers to be expired and removed prematurely instead of the early return, fall through to the mtime/size comparisons used for normal objects Fixes: https://tracker.ceph.com/issues/73240 Signed-off-by: Casey Bodley --- src/rgw/rgw_lc.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rgw/rgw_lc.cc b/src/rgw/rgw_lc.cc index 1fbca2f0968..fd60f271f51 100644 --- a/src/rgw/rgw_lc.cc +++ b/src/rgw/rgw_lc.cc @@ -1175,8 +1175,8 @@ public: ldpp_dout(dpp, 7) << __func__ << "(): dm-check DELE: key=" << o.key << " " << oc.wq->thr_name() << dendl; - *exp_time = real_clock::now(); - return true; + + // go on to compare mtime, size, etc } auto& mtime = o.meta.mtime; -- 2.39.5