]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: return error if lock log shard fails 32825/head
authorzhangshaowen <zhangshaowen@cmss.chinamobile.com>
Mon, 4 Nov 2019 01:57:34 +0000 (09:57 +0800)
committerNathan Cutler <ncutler@suse.com>
Fri, 24 Jan 2020 14:55:07 +0000 (15:55 +0100)
Fixes: https://github.com/ceph/ceph/pull/31344
Signed-off-by: zhangshaowen <zhangshaowen@cmss.chinamobile.com>
(cherry picked from commit 0775c1b8754f488434ec72d262d1387627e6bf62)

src/rgw/rgw_reshard.cc

index 7237e5073ce01415ddc9e6e33433d9d1687157d8..958cceb1934ef5b6f7833e580e41d6ee593024ab 100644 (file)
@@ -978,12 +978,12 @@ int RGWReshard::process_single_logshard(int logshard_num)
   RGWBucketReshardLock logshard_lock(store, logshard_oid, false);
 
   int ret = logshard_lock.lock();
-  if (ret == -EBUSY) { /* already locked by another processor */
+  if (ret < 0) { 
     ldout(store->ctx(), 5) << __func__ << "(): failed to acquire lock on " <<
-      logshard_oid << dendl;
+      logshard_oid << ", ret = " << ret <<dendl;
     return ret;
   }
-
+  
   do {
     std::list<cls_rgw_reshard_entry> entries;
     ret = list(logshard_num, marker, max_entries, entries, &truncated);