From: Mark Kogan Date: Thu, 15 Aug 2019 13:59:39 +0000 (-0400) Subject: rgw: fix cls_bucket_list_unordered() partial results X-Git-Tag: v13.2.7~122^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F30253%2Fhead;p=ceph.git rgw: fix cls_bucket_list_unordered() partial results returnied after -ENOENT dirent is encountered (details in tracker issue below) fixes: https://tracker.ceph.com/issues/41297 Signed-off-by: Mark Kogan (cherry picked from commit 06dcfb1bd3390d6b169342b624c0ba4d62210bbf) Conflicts: src/rgw/rgw_rados.cc - git got confused; made the changes manually --- diff --git a/src/rgw/rgw_rados.cc b/src/rgw/rgw_rados.cc index 32db310a0c9..fb007d31dea 100644 --- a/src/rgw/rgw_rados.cc +++ b/src/rgw/rgw_rados.cc @@ -13416,6 +13416,8 @@ int RGWRados::cls_bucket_list_ordered(RGWBucketInfo& bucket_info, if (r < 0 && r != -ENOENT) { return r; } + } else { + r = 0; } if (r >= 0) { ldout(cct, 10) << "RGWRados::cls_bucket_list_ordered: got " << @@ -13526,6 +13528,8 @@ int RGWRados::cls_bucket_list_unordered(RGWBucketInfo& bucket_info, if (r < 0 && r != -ENOENT) { return r; } + } else { + r = 0; } // at this point either r >=0 or r == -ENOENT