From: Yehuda Sadeh Date: Mon, 20 Apr 2015 23:00:34 +0000 (-0700) Subject: rgw: don't use end_marker for namespaced object listing X-Git-Tag: v9.0.1~97^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d2a67282e0ffd130a6e5d9c2886fcb209203ec08;p=ceph.git rgw: don't use end_marker for namespaced object listing Fixes: #11437 Don't deal with end_marker if there's a namespace set for the object listing. The cur_end_marker.empty() check is incorrect if no end_marker is provided, but a namespace is set. Just avoid this issue entirely, as it's not needed. Signed-off-by: Yehuda Sadeh --- diff --git a/src/rgw/rgw_rados.cc b/src/rgw/rgw_rados.cc index 485d172c2a74..30af667193b1 100644 --- a/src/rgw/rgw_rados.cc +++ b/src/rgw/rgw_rados.cc @@ -2347,7 +2347,9 @@ int RGWRados::Bucket::List::list_objects(int max, vector *result, end_marker_obj.set_ns(params.ns); end_marker_obj.set_obj(params.end_marker.name); rgw_obj_key cur_end_marker; - end_marker_obj.get_index_key(&cur_end_marker); + if (params.ns.empty()) { /* no support for end marker for namespaced objects */ + end_marker_obj.get_index_key(&cur_end_marker); + } const bool cur_end_marker_valid = !cur_end_marker.empty(); prefix_obj.set_ns(params.ns);