]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw/multisite: don't sync metadata entry for bucket instance removal.
authorShilpa Jagannath <smanjara@redhat.com>
Mon, 30 Sep 2024 22:35:47 +0000 (18:35 -0400)
committerShilpa Jagannath <smanjara@redhat.com>
Fri, 4 Apr 2025 17:16:53 +0000 (13:16 -0400)
removal should happen locally

Signed-off-by: Shilpa Jagannath <smanjara@redhat.com>
src/rgw/driver/rados/rgw_bucket.cc
src/rgw/rgw_metadata.cc
src/rgw/services/svc_bucket_sobj.cc

index 4a6ed6b6d17b441b8815a5476d845aee91bd4773..743187bb79e7b5dbb30ed9a2098a2a8892f022db 100644 (file)
@@ -2975,23 +2975,7 @@ int RGWBucketInstanceMetadataHandler::put_post(
 int RGWBucketInstanceMetadataHandler::remove(std::string& entry, RGWObjVersionTracker& objv_tracker,
                                              optional_yield y, const DoutPrefixProvider *dpp)
 {
-  RGWBucketCompleteInfo bci;
-  int ret = svc_bucket->read_bucket_instance_info(entry, &bci.info, nullptr,
-                                                  &bci.attrs, y, dpp);
-  if (ret == -ENOENT) {
-    return 0;
-  }
-  if (ret < 0) {
-    return ret;
-  }
-
-  ret = svc_bucket->remove_bucket_instance_info(
-      entry, bci.info, &bci.info.objv_tracker, y, dpp);
-  if (ret < 0)
-    return ret;
-  std::ignore = update_bucket_topic_mappings(dpp, &bci, /*current_bci=*/nullptr,
-                                             driver);
-  return 0;
+  return 0; // skip bucket instance removal. each zone will handle it independently during trimming
 }
 
 int RGWBucketInstanceMetadataHandler::mutate(const std::string& entry, const ceph::real_time& mtime,
index 2323bd1d1579a018878d47cbccb2aeb4b5464686..d84ff16f711178b325c4d70344ef4657ebad590a 100644 (file)
@@ -353,14 +353,12 @@ int RGWMetadataManager::remove(string& metadata_key, optional_yield y, const Dou
 
   int ret = find_handler(metadata_key, &handler, entry);
   if (ret < 0) {
-    ldout(cct, 10) << "ERROR: " << __func__ << "(): find_handler returned: ret=" << ret << dendl;
     return ret;
   }
 
   RGWMetadataObject *obj;
   ret = handler->get(entry, &obj, y, dpp);
   if (ret < 0) {
-    ldout(cct, 10) << "ERROR: " << __func__ << "(): handler->get() returned: ret=" << ret << dendl;
     return ret;
   }
   RGWObjVersionTracker objv_tracker;
index 0f4cd4e847b5ae8cd999ad4618362209b75cab37..86416afc491c153f9f82bd74072095bf46b5a353 100644 (file)
@@ -526,8 +526,7 @@ int RGWSI_Bucket_SObj::remove_bucket_instance_info(const string& key,
      */
   }
 
-  return svc.mdlog->complete_entry(dpp, y, "bucket.instance",
-                                   key, objv_tracker);
+  return 0;
 }
 
 int RGWSI_Bucket_SObj::read_bucket_stats(const RGWBucketInfo& bucket_info,