{
dout(10) << __func__ << dendl;
- string prefix = "pgmap_meta";
+ string prefix = pgmap_meta_prefix;
version_t version = mon->store->get(prefix, "version");
epoch_t last_osdmap_epoch = mon->store->get(prefix, "last_osdmap_epoch");
{
read_pgmap_meta();
- string prefix = "pgmap_pg";
+ string prefix = pgmap_pg_prefix;
for (KeyValueDB::Iterator i = mon->store->get_iterator(prefix); i->valid(); i->next()) {
string key = i->key();
pg_t pgid;
dout(20) << " got " << pgid << dendl;
}
- prefix = "pgmap_osd";
+ prefix = pgmap_osd_prefix;
for (KeyValueDB::Iterator i = mon->store->get_iterator(prefix); i->valid(); i->next()) {
string key = i->key();
int osd = atoi(key.c_str());
::decode(pgid, p);
dout(20) << " refreshing pg " << pgid << dendl;
bufferlist bl;
- int r = mon->store->get("pgmap_pg", stringify(pgid), bl);
+ int r = mon->store->get(pgmap_pg_prefix, stringify(pgid), bl);
if (r >= 0) {
pg_map.update_pg(pgid, bl);
} else {
::decode(osd, p);
dout(20) << " refreshing osd." << osd << dendl;
bufferlist bl;
- int r = mon->store->get("pgmap_osd", stringify(osd), bl);
+ int r = mon->store->get(pgmap_osd_prefix, stringify(osd), bl);
if (r >= 0) {
pg_map.update_osd(osd, bl);
} else {
uint64_t features = mon->get_quorum_features();
- string prefix = "pgmap_meta";
+ string prefix = pgmap_meta_prefix;
t->put(prefix, "version", pending_inc.version);
{
::encode(pending_inc.stamp, incbl);
{
bufferlist dirty;
- string prefix = "pgmap_pg";
+ string prefix = pgmap_pg_prefix;
for (map<pg_t,pg_stat_t>::const_iterator p = pending_inc.pg_stat_updates.begin();
p != pending_inc.pg_stat_updates.end();
++p) {
}
{
bufferlist dirty;
- string prefix = "pgmap_osd";
+ string prefix = pgmap_osd_prefix;
for (map<int32_t,osd_stat_t>::const_iterator p = pending_inc.osd_stat_updates.begin();
p != pending_inc.osd_stat_updates.end();
++p) {
private:
PGMap::Incremental pending_inc;
+ const char *pgmap_meta_prefix;
+ const char *pgmap_pg_prefix;
+ const char *pgmap_osd_prefix;
+
void create_initial();
void update_from_paxos(bool *need_bootstrap);
void upgrade_format();
PGMonitor(Monitor *mn, Paxos *p, const string& service_name)
: PaxosService(mn, p, service_name),
need_check_down_pgs(false),
- last_map_pg_create_osd_epoch(0)
+ last_map_pg_create_osd_epoch(0),
+ pgmap_meta_prefix("pgmap_meta"),
+ pgmap_pg_prefix("pgmap_pg"),
+ pgmap_osd_prefix("pgmap_osd")
{ }
~PGMonitor() { }
virtual void get_store_prefixes(set<string>& s) {
s.insert(get_service_name());
- s.insert("pgmap_meta");
- s.insert("pgmap_pg");
- s.insert("pgmap_osd");
+ s.insert(pgmap_meta_prefix);
+ s.insert(pgmap_pg_prefix);
+ s.insert(pgmap_osd_prefix);
}
virtual void on_restart();