From 60482f5a3f29e73b86bc29a04b3bf072071ea247 Mon Sep 17 00:00:00 2001 From: Josh Durgin Date: Tue, 1 Mar 2011 10:33:06 -0800 Subject: [PATCH] testlibrbd: recreate test pool each time Signed-off-by: Josh Durgin --- src/testlibrbd.c | 11 ++++++++++- src/testlibrbdpp.cc | 6 ++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/testlibrbd.c b/src/testlibrbd.c index e37e21e5c9baf..6d079e67bdd6d 100644 --- a/src/testlibrbd.c +++ b/src/testlibrbd.c @@ -264,8 +264,17 @@ int main(int argc, const char **argv) assert(rados_create(&cluster, NULL) == 0); assert(rados_conf_read_file(cluster, "/etc/ceph/ceph.conf") == 0); rados_reopen_log(cluster); - assert(rados_ioctx_open(cluster, TEST_POOL, &io_ctx) == 0); assert(rados_connect(cluster) == 0); + if (rados_ioctx_lookup(cluster, TEST_POOL) != -ENOENT) { + int r = rados_pool_delete(cluster, TEST_POOL); + printf("rados_pool_delete returned %d\n", r); + } + int r = rados_pool_create(cluster, TEST_POOL); + printf("rados_pool_create returned %d\n", r); + assert(rados_ioctx_open(cluster, TEST_POOL, &io_ctx) == 0); + struct rados_ioctx_stat_t stats; + rados_ioctx_stat(io_ctx, &stats); + test_ls(io_ctx, 0); test_ls(io_ctx, 0); test_create_and_stat(io_ctx, TEST_IMAGE, MB_BYTES(1)); assert(rbd_open(io_ctx, TEST_IMAGE, &image, NULL) == 0); diff --git a/src/testlibrbdpp.cc b/src/testlibrbdpp.cc index 9bf7af8f4fcd2..b06bdaa3cc236 100644 --- a/src/testlibrbdpp.cc +++ b/src/testlibrbdpp.cc @@ -248,6 +248,12 @@ int main(int argc, const char **argv) rbd = new librbd::RBD(); assert(rados.init(NULL) == 0); assert(rados.connect() == 0); + if (rados.pool_lookup(TEST_POOL) != -ENOENT) { + int r = rados.pool_delete(TEST_POOL); + printf("rados.pool_delete returned %d\n", r); + } + int r = rados.pool_create(TEST_POOL); + printf("rados.pool_create returned %d\n", r); assert(rados.ioctx_open(TEST_POOL, io_ctx) == 0); test_ls(io_ctx, 0); test_create_and_stat(io_ctx, TEST_IMAGE, MB_BYTES(1)); -- 2.39.5