]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: VersionIdMarker and NextVersionIdMarker should be returned when listing 16316/head
authorZhang Shaowen <zhangshaowen@cmss.chinamobile.com>
Tue, 9 May 2017 08:39:39 +0000 (16:39 +0800)
committerNathan Cutler <ncutler@suse.com>
Thu, 13 Jul 2017 09:05:26 +0000 (11:05 +0200)
object versions if necessary.

Fixes: http://tracker.ceph.com/issues/19886
Signed-off-by: Zhang Shaowen <zhangshaowen@cmss.chinamobile.com>
(cherry picked from commit f805c3e08948e379b7d2c4f2faf9e7f550e4cb23)

src/rgw/rgw_op.cc
src/rgw/rgw_rest_s3.cc

index 245f3d8bc29a65ed3c3c9efc823c53b4c8804b81..9a6e561ce9cc50807a2e0169b2f20bfe4e83d9a9 100644 (file)
@@ -1781,7 +1781,7 @@ void RGWListBucket::execute()
   list_op.params.list_versions = list_versions;
 
   op_ret = list_op.list_objects(max, &objs, &common_prefixes, &is_truncated);
-  if (op_ret >= 0 && !delimiter.empty()) {
+  if (op_ret >= 0) {
     next_marker = list_op.get_next_marker();
   }
 }
index e99c3866a5168fbcc424eb3cab49ae3e42f29085..aff990ceaf66bbcaa45181a738b11f7715da000d 100644 (file)
@@ -493,8 +493,11 @@ void RGWListBucket_ObjStore_S3::send_versioned_response()
   s->formatter->dump_string("Name", s->bucket_name);
   s->formatter->dump_string("Prefix", prefix);
   s->formatter->dump_string("KeyMarker", marker.name);
-  if (is_truncated && !next_marker.empty())
+  s->formatter->dump_string("VersionIdMarker", marker.instance);
+  if (is_truncated && !next_marker.empty()) {
     s->formatter->dump_string("NextKeyMarker", next_marker.name);
+    s->formatter->dump_string("NextVersionIdMarker", next_marker.instance);
+  }
   s->formatter->dump_int("MaxKeys", max);
   if (!delimiter.empty())
     s->formatter->dump_string("Delimiter", delimiter);