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: v12.2.13~50^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2f6936b3d5be04f27e641f7703e9fdf0c40bfcc7;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) --- diff --git a/src/rgw/rgw_rados.cc b/src/rgw/rgw_rados.cc index e57d8b83ad7..5ec11b7099f 100644 --- a/src/rgw/rgw_rados.cc +++ b/src/rgw/rgw_rados.cc @@ -13406,6 +13406,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 " << @@ -13516,6 +13518,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