int run(void)
{
+ int ret_val = 0;
rados_t cl;
RETURN1_IF_NONZERO(rados_create(&cl, NULL));
rados_conf_parse_argv(cl, m_argc, m_argv);
for (int i = 0; i < r; ++i)
++d;
if (d == to_delete.end()) {
- return -EDOM;
+ ret_val = -EDOM;
+ goto out;
}
std::string oid(d->second);
to_delete.erase(d);
if (ret != 0) {
printf("%s: rados_remove(%s) failed with error %d\n",
get_id_str(), oid.c_str(), ret);
- return ret;
+ ret_val = ret;
+ goto out;
}
++removed;
if ((removed % 25) == 0) {
printf("%s: removed %d objects\n", get_id_str(), removed);
+out:
rados_ioctx_destroy(io_ctx);
rados_shutdown(cl);
- return 0;
+ return ret_val;
}
private:
std::string m_pool_name;