]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: update datalog also when unlinking object instance
authorYehuda Sadeh <yehuda@redhat.com>
Thu, 7 Jan 2016 00:25:49 +0000 (16:25 -0800)
committerYehuda Sadeh <yehuda@redhat.com>
Fri, 12 Feb 2016 00:13:52 +0000 (16:13 -0800)
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
src/rgw/rgw_rados.cc

index e545a65cf69958b84ec052b1824bcb9dcdb713bd..758312d070ef55a52ca593ad000a889c85da21f1 100644 (file)
@@ -7225,20 +7225,6 @@ int RGWRados::Object::Delete::delete_obj()
       if (r < 0) {
         return r;
       }
-
-      BucketShard *bs;
-      r = target->get_bucket_shard(&bs);
-      if (r < 0) {
-        ldout(store->ctx(), 5) << "failed to get BucketShard object: r=" << r << dendl;
-        return r;
-      }
-
-      r = store->data_log->add_entry(bs->bucket, bs->shard_id);
-      if (r < 0) {
-        lderr(store->ctx()) << "ERROR: failed writing data log" << dendl;
-        return r;
-      }
-
     } else {
       rgw_bucket_dir_entry dirent;
 
@@ -7254,6 +7240,19 @@ int RGWRados::Object::Delete::delete_obj()
       result.version_id = instance;
     }
 
+    BucketShard *bs;
+    int r = target->get_bucket_shard(&bs);
+    if (r < 0) {
+      ldout(store->ctx(), 5) << "failed to get BucketShard object: r=" << r << dendl;
+      return r;
+    }
+
+    r = store->data_log->add_entry(bs->bucket, bs->shard_id);
+    if (r < 0) {
+      lderr(store->ctx()) << "ERROR: failed writing data log" << dendl;
+      return r;
+    }
+
     return 0;
   }