]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: RGWPostBucketLoggingOp uses yield context 63561/head
authorCasey Bodley <cbodley@redhat.com>
Wed, 28 May 2025 15:10:59 +0000 (11:10 -0400)
committerCasey Bodley <cbodley@redhat.com>
Thu, 12 Jun 2025 16:49:07 +0000 (12:49 -0400)
avoid blocking due to null_yield

Fixes: https://tracker.ceph.com/issues/71479
Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_rest_bucket_logging.cc

index 09c1a2200524c2834dc059d555fa901ea78d799c..98a5f184a069dffd1487cd957c56a0e292d80ff3 100644 (file)
@@ -380,13 +380,13 @@ class RGWPostBucketLoggingOp : public RGWDefaultResponseOp {
     const auto& target_bucket_id = target_bucket->get_key();
     std::string obj_name;
     RGWObjVersionTracker objv_tracker;
-    op_ret = target_bucket->get_logging_object_name(obj_name, configuration.target_prefix, null_yield, this, &objv_tracker);
+    op_ret = target_bucket->get_logging_object_name(obj_name, configuration.target_prefix, y, this, &objv_tracker);
     if (op_ret < 0) {
       ldpp_dout(this, 1) << "ERROR: failed to get pending logging object name from target bucket '" << target_bucket_id << "'" << dendl;
       return;
     }
     const auto region = driver->get_zone()->get_zonegroup().get_api_name();
-    op_ret = rgw::bucketlogging::rollover_logging_object(configuration, target_bucket, obj_name, this, region, source_bucket, null_yield, true, &objv_tracker, &old_obj);
+    op_ret = rgw::bucketlogging::rollover_logging_object(configuration, target_bucket, obj_name, this, region, source_bucket, y, true, &objv_tracker, &old_obj);
     if (op_ret < 0) {
       if (op_ret == -ENOENT) {
         ldpp_dout(this, 5) << "WARNING: no pending logging object '" << obj_name << "'. nothing to flush"