From: Matt Benjamin Date: Wed, 6 Jan 2016 15:52:49 +0000 (-0500) Subject: librgw: don't early terminate readdirs (in progress) X-Git-Tag: v10.1.0~382^2~61 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=adfb96a5c25e1e1353cdde909aa889919e623baf;p=ceph.git librgw: don't early terminate readdirs (in progress) Signed-off-by: Matt Benjamin --- diff --git a/src/rgw/rgw_file.h b/src/rgw/rgw_file.h index d631fa1ece8..4a3b7edc14f 100644 --- a/src/rgw/rgw_file.h +++ b/src/rgw/rgw_file.h @@ -372,6 +372,7 @@ namespace rgw { directory* d = get(&variant_type); if (d) { unique_lock guard(mtx); + // XXXX check for failure (dup key) d->marker_cache.insert( marker_cache_t::value_type(off, marker.data())); /* 90% of directories hold <= 32 entries (Yifan Wang, CMU), @@ -868,7 +869,7 @@ public: return 0; } - bool eof() { return ssize_t(ix) < RGWListBuckets::limit; } + bool eof() { return ix == 0; } }; /* RGWListBucketsRequest */ @@ -1017,7 +1018,7 @@ public: send_response(); } - bool eof() { return ssize_t(ix) < RGWListBucket::max; } + bool eof() { return ix == 0; } }; /* RGWReaddirRequest */