]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: improve handling of already removed buckets in object expirer. 6138/head 6169/head
authorRadoslaw Zarzynski <rzarzynski@github.com>
Thu, 1 Oct 2015 19:06:13 +0000 (21:06 +0200)
committerRadoslaw Zarzynski <rzarzynski@github.com>
Fri, 2 Oct 2015 16:20:11 +0000 (18:20 +0200)
Fixes: #13326
Backport: infernalis
Signed-off-by: Radoslaw Zarzynski <rzarzynski@github.com>
src/rgw/rgw_object_expirer_core.cc

index 48577fe1967e76e26ba9f46b18fd8b562ab24c20..59035111db2a8499d66e292594b3ceaa838544b8 100644 (file)
@@ -57,8 +57,13 @@ int RGWObjectExpirer::garbage_single_object(objexp_hint_entry& hint)
   RGWBucketInfo bucket_info;
 
   int ret = init_bucket_info(hint.bucket_name, hint.bucket_id, bucket_info);
-  if (ret < 0) {
-    ldout(store->ctx(), 1) << "ERROR: could not init bucket: " << cpp_strerror(-ret) << dendl;
+  if (-ENOENT == ret) {
+    ldout(store->ctx(), 15) << "NOTICE: cannot find bucket = " \
+        << hint.bucket_name << ". The object must be already removed" << dendl;
+    return -ERR_PRECONDITION_FAILED;
+  } else if (ret < 0) {
+    ldout(store->ctx(),  1) << "ERROR: could not init bucket = " \
+        << hint.bucket_name << "due to ret = " << ret << dendl;
     return ret;
   }