]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rados: use bare omap_get_keys op
authorSage Weil <sage@redhat.com>
Mon, 16 Jan 2017 21:51:13 +0000 (16:51 -0500)
committerSage Weil <sage@redhat.com>
Fri, 20 Jan 2017 22:52:18 +0000 (17:52 -0500)
This handles the client-side looping on 'more' if the OSD limits
the response size.

Signed-off-by: Sage Weil <sage@redhat.com>
src/tools/rados/rados.cc

index 28b08ba77ca08327a3ee41137b4e4fa3a73cd9ac..99efe187de1d578e2a4a848e20308d835f89b376 100644 (file)
@@ -3196,10 +3196,8 @@ static int rados_tool_common(const std::map < std::string, std::string > &opts,
     if (!pool_name || nargs.size() < 2)
       usage_exit();
 
-    librados::ObjectReadOperation read;
     set<string> out_keys;
-    read.omap_get_keys("", LONG_MAX, &out_keys, &ret);
-    io_ctx.operate(nargs[1], &read, NULL);
+    ret = io_ctx.omap_get_keys(nargs[1], "", LONG_MAX, &out_keys);
     if (ret < 0) {
       cerr << "error getting omap key set " << pool_name << "/"
           << nargs[1] << ": "  << cpp_strerror(ret) << std::endl;