]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw/notifications: cleanup all coroutines after sending the notification 59353/head
authorYuval Lifshitz <ylifshit@redhat.com>
Thu, 16 Nov 2023 15:47:06 +0000 (15:47 +0000)
committerKonstantin Shalygin <k0ste@k0ste.ru>
Tue, 20 Aug 2024 12:52:13 +0000 (19:52 +0700)
this is fixing a regression from: 6b6592f50b6b81fa13a330bcb91273ba7f25c0c9

Fixes: https://tracker.ceph.com/issues/63580
Signed-off-by: Yuval Lifshitz <ylifshit@redhat.com>
(cherry picked from commit 63e14893cc7dc6a3aec92c0867ce5e3e67f44b29)

src/rgw/rgw_op.cc

index 1056c1ea043f715499c68b565139ccf8ad9619c0..ffb36c4d8166d0a4adb847a3d01ed277fa4950e8 100644 (file)
@@ -6993,7 +6993,6 @@ void RGWDeleteMultiObj::handle_individual_object(const rgw_obj_key& o, optional_
     op_ret = 0;
   }
 
-  send_partial_response(o, del_op->result.delete_marker, del_op->result.version_id, op_ret, formatter_flush_cond);
 
   // send request to notification manager
   int ret = res->publish_commit(this, obj_size, ceph::real_clock::now(), etag, version_id);
@@ -7001,6 +7000,8 @@ void RGWDeleteMultiObj::handle_individual_object(const rgw_obj_key& o, optional_
     ldpp_dout(this, 1) << "ERROR: publishing notification failed, with error: " << ret << dendl;
     // too late to rollback operation, hence op_ret is not set here
   }
+  
+  send_partial_response(o, del_op->result.delete_marker, del_op->result.version_id, op_ret, formatter_flush_cond);
 }
 
 void RGWDeleteMultiObj::execute(optional_yield y)