From 8903ea3441140965d075d43dbf3e604a8d76ebf3 Mon Sep 17 00:00:00 2001 From: Josh Durgin Date: Fri, 25 Feb 2011 16:26:51 -0800 Subject: [PATCH] testradospp: update for new librados API Signed-off-by: Josh Durgin --- src/testradospp.cc | 95 ++++++++++++++++++++-------------------------- 1 file changed, 41 insertions(+), 54 deletions(-) diff --git a/src/testradospp.cc b/src/testradospp.cc index 253f8ccfc44cd..266acec2888e0 100644 --- a/src/testradospp.cc +++ b/src/testradospp.cc @@ -56,7 +56,7 @@ int main(int argc, const char **argv) printf("error: succeeded in setting nonexistent config option\n"); exit(1); } - if (rados.conf_set(cl, "log to stderr", "2")) { + if (rados.conf_set("log to stderr", "2")) { printf("error: error setting log_to_stderr\n"); exit(1); } @@ -92,113 +92,101 @@ int main(int argc, const char **argv) const char *oid = "bar"; PoolHandle pool; - int r = rados.pool_open("data", &pool); - cout << "open pool result = " << r << " pool = " << pool << std::endl; + int r = rados.pool_open("data", pool); + cout << "pool_open result = " << r << std::endl; - r = rados.write(pool, oid, 0, bl, bl.length()); - uint64_t objver = rados.get_last_version(pool); - cout << "rados.write returned " << r << " last_ver=" << objver << std::endl; + r = pool.write(oid, bl, bl.length(), 0); + uint64_t objver = pool.get_last_version(); + cout << "pool.write returned " << r << " last_ver=" << objver << std::endl; uint64_t handle; C_Watch wc; - r = rados.watch(pool, oid, objver, &handle, &wc); - cout << "rados.watch returned " << r << std::endl; + r = pool.watch(oid, objver, &handle, &wc); + cout << "pool.watch returned " << r << std::endl; cout << "*** press enter to continue ***" << std::endl; getchar(); - rados.set_notify_timeout(pool, 7); - r = rados.notify(pool, oid, objver); - cout << "rados.notify returned " << r << std::endl; + pool.set_notify_timeout(7); + r = pool.notify(oid, objver); + cout << "pool.notify returned " << r << std::endl; cout << "*** press enter to continue ***" << std::endl; getchar(); - r = rados.notify(pool, oid, objver); - cout << "rados.notify returned " << r << std::endl; + r = pool.notify(oid, objver); + cout << "pool.notify returned " << r << std::endl; cout << "*** press enter to continue ***" << std::endl; getchar(); - r = rados.unwatch(pool, oid, handle); - cout << "rados.unwatch returned " << r << std::endl; + r = pool.unwatch(oid, handle); + cout << "pool.unwatch returned " << r << std::endl; cout << "*** press enter to continue ***" << std::endl; getchar(); - r = rados.notify(pool, oid, objver); - cout << "rados.notify returned " << r << std::endl; + r = pool.notify(oid, objver); + cout << "pool.notify returned " << r << std::endl; cout << "*** press enter to continue ***" << std::endl; getchar(); - rados.set_assert_version(pool, objver); + pool.set_assert_version(objver); - r = rados.write(pool, oid, 0, bl, bl.length() - 1); - cout << "rados.write returned " << r << std::endl; + r = pool.write(oid, bl, bl.length() - 1, 0); + cout << "pool.write returned " << r << std::endl; exit(0); - r = rados.write(pool, oid, 0, bl, bl.length() - 2); - cout << "rados.write returned " << r << std::endl; - r = rados.write(pool, oid, 0, bl, bl.length() - 3); + r = pool.write(oid, bl, bl.length() - 2, 0); + cout << "pool.write returned " << r << std::endl; + r = pool.write(oid, bl, bl.length() - 3, 0); cout << "rados.write returned " << r << std::endl; - r = rados.write_full(pool, oid, blf); + r = pool.write_full(oid, blf); cout << "rados.write_full returned " << r << std::endl; - r = rados.read(pool, oid, 0, bl, bl.length()); + r = pool.read(oid, bl, bl.length(), 0); cout << "rados.read returned " << r << std::endl; - r = rados.trunc(pool, oid, 8); + r = pool.trunc(oid, 8); cout << "rados.trunc returned " << r << std::endl; - r = rados.read(pool, oid, 0, bl, bl.length()); + r = pool.read(oid, bl, bl.length(), 0); cout << "rados.read returned " << r << std::endl; - r = rados.exec(pool, oid, "crypto", "md5", bl, bl2); + r = pool.exec(oid, "crypto", "md5", bl, bl2); cout << "exec returned " << r << " buf size=" << bl2.length() << std::endl; const unsigned char *md5 = (const unsigned char *)bl2.c_str(); char md5_str[bl2.length()*2 + 1]; buf_to_hex(md5, bl2.length(), md5_str); cout << "md5 result=" << md5_str << std::endl; - r = rados.exec(pool, oid, "crypto", "sha1", bl, bl2); + r = pool.exec(oid, "crypto", "sha1", bl, bl2); cout << "exec returned " << r << std::endl; const unsigned char *sha1 = (const unsigned char *)bl2.c_str(); char sha1_str[bl2.length()*2 + 1]; buf_to_hex(sha1, bl2.length(), sha1_str); cout << "sha1 result=" << sha1_str << std::endl; - r = rados.exec(pool, oid, "acl", "set", bl, bl2); - r = rados.exec(pool, oid, "acl", "get", bl, bl2); + r = pool.exec(oid, "acl", "set", bl, bl2); + r = pool.exec(oid, "acl", "get", bl, bl2); cout << "exec returned " << r << std::endl; if (bl2.length() > 0) { cout << "attr=" << bl2.c_str() << std::endl; } - int size = rados.read(pool, oid, 0, bl2, 128); + int size = pool.read(oid, bl2, 128, 0); cout << "read result=" << bl2.c_str() << std::endl; cout << "size=" << size << std::endl; const char *oid2 = "jjj10.rbd"; - r = rados.exec(pool, oid2, "rbd", "snap_list", bl, bl2); + r = pool.exec(oid2, "rbd", "snap_list", bl, bl2); cout << "snap_list result=" << r << std::endl; - r = rados.exec(pool, oid2, "rbd", "snap_add", bl, bl2); + r = pool.exec(oid2, "rbd", "snap_add", bl, bl2); cout << "snap_add result=" << r << std::endl; if (r > 0) { char *s = bl2.c_str(); for (int i=0; i vec; - r = rados.objects_list_more(ctx, 2, vec); - entries = vec.size(); - cout << "list result=" << r << " entries=" << entries << std::endl; - list::iterator iter; - for (iter = vec.begin(); iter != vec.end(); ++iter) { - cout << *iter << std::endl; - } - } while (entries); - rados.objects_list_close(ctx); - - + for (ObjectIterator iter = pool.objects_begin(); + iter != pool.objects_end(); iter++) { + cout << *iter << std::endl; + } map attrset; - rados.getxattrs(pool, oid, attrset); + pool.getxattrs(oid, attrset); map::iterator it; for (it = attrset.begin(); it != attrset.end(); ++it) { @@ -206,9 +194,8 @@ int main(int argc, const char **argv) } #if 0 - r = rados.remove(pool, oid); + r = pool.remove(oid); cout << "remove result=" << r << std::endl; - rados.close_pool(pool); #endif rados.shutdown(); -- 2.39.5