}
void OSDMonitor::do_application_enable(int64_t pool_id,
- const std::string &app_name)
+ const std::string &app_name,
+ const std::string &app_key,
+ const std::string &app_value)
{
assert(paxos->is_plugged() && is_writeable());
p = pending_inc.new_pools[pool_id];
}
- p.application_metadata.insert({app_name, {}});
+ if (app_key.empty()) {
+ p.application_metadata.insert({app_name, {}});
+ } else {
+ p.application_metadata.insert({app_name, {{app_key, app_value}}});
+ }
p.last_change = pending_inc.epoch;
pending_inc.new_pools[pool_id] = p;
}
void check_osdmap_sub(Subscription *sub);
void check_pg_creates_sub(Subscription *sub);
- void do_application_enable(int64_t pool_id, const std::string &app_name);
+ void do_application_enable(int64_t pool_id, const std::string &app_name,
+ const std::string &app_key="",
+ const std::string &app_value="");
void add_flag(int flag) {
if (!(osdmap.flags & flag)) {