string force;
cmd_getval(g_ceph_context,cmdmap, "force", force);
- int64_t metadata_num_objects = mon->pgservice.get_pool_stat(metadata).stats.sum.num_objects;
- if (force != "--force" && metadata_num_objects > 0) {
- ss << "pool '" << metadata_name
- << "' already contains some objects. Use an empty pool instead.";
- return -EINVAL;
+ const pool_stat_t *stat = mon->pgservice.get_pool_stat(metadata);
+ if (stat) {
+ int64_t metadata_num_objects = stat->stats.sum.num_objects;
+ if (force != "--force" && metadata_num_objects > 0) {
+ ss << "pool '" << metadata_name
+ << "' already contains some objects. Use an empty pool instead.";
+ return -EINVAL;
+ }
}
string data_name;
void reset(const PGMap& o) {
parent = o;
}
- const pool_stat_t& get_pool_stat(int poolid) const {
+
+ const pool_stat_t* get_pool_stat(int poolid) const {
auto i = parent.pg_pool_sum.find(poolid);
- assert(i != parent.pg_pool_sum.end());
- return i->second;
+ if (i != parent.pg_pool_sum.end()) {
+ return &i->second;
+ }
+ return NULL;
}
};