From 6cf51c7ca84e2ac6821f23781219205e0b8cbe69 Mon Sep 17 00:00:00 2001 From: Yuval Lifshitz Date: Thu, 5 Jun 2025 07:48:07 +0000 Subject: [PATCH] rgw/logging: log only object ACls in journal mode Fixes: https://tracker.ceph.com/issues/71563 Signed-off-by: Yuval Lifshitz (cherry picked from commit ce2d09efebb14c79ad1f8540d0824c477ba0b836) --- src/rgw/rgw_op.cc | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/rgw/rgw_op.cc b/src/rgw/rgw_op.cc index e6fc5b3258605..950dcd941d491 100644 --- a/src/rgw/rgw_op.cc +++ b/src/rgw/rgw_op.cc @@ -6370,17 +6370,20 @@ void RGWPutACLs::execute(optional_yield y) return; } - const auto etag = s->object->get_attrs()[RGW_ATTR_ETAG].to_str(); - op_ret = rgw::bucketlogging::log_record(driver, - rgw::bucketlogging::LoggingType::Journal, - s->object.get(), - s, - canonical_name(), - etag, - s->object->get_size(), - this, y, false, false); - if (op_ret < 0) { - return; + if (!rgw::sal::Object::empty(s->object)) { + // in journal mode we log only object ACLs + const auto etag = s->object->get_attrs()[RGW_ATTR_ETAG].to_str(); + op_ret = rgw::bucketlogging::log_record(driver, + rgw::bucketlogging::LoggingType::Journal, + s->object.get(), + s, + canonical_name(), + etag, + s->object->get_size(), + this, y, false, false); + if (op_ret < 0) { + return; + } } bufferlist bl; -- 2.39.5