continue;
}
+ if (pgid.preferred() >= 0) {
+ dout(10) << __func__ << ": skipping localized PG " << pgid << dendl;
+ // FIXME: delete it too, eventually
+ continue;
+ }
+
PG *pg = _open_lock_pg(pgid);
// read pg state, log
int split_bits = p->second.split_bits;
pg_t on = pgid;
+ if (pgid.preferred() >= 0) {
+ dout(20) << "ignoring localized pg " << pgid << dendl;
+ continue;
+ }
+
if (split_bits) {
on = parent;
dout(20) << "mkpg " << pgid << " e" << created << " from parent " << parent
it++) {
PG *pg = 0;
+ if (it->pgid.preferred() >= 0) {
+ dout(20) << "ignoring localized pg " << it->pgid << dendl;
+ continue;
+ }
+
ObjectStore::Transaction *t;
C_Contexts *fin;
pg = get_or_create_pg(*it, m->get_epoch(), from, created, true, &t, &fin);
int from = m->get_source().num();
if (!require_same_or_newer_map(op, m->get_epoch())) return;
+ if (m->info.pgid.preferred() >= 0) {
+ dout(10) << "ignoring localized pg " << m->info.pgid << dendl;
+ return;
+ }
+
int created = 0;
ObjectStore::Transaction *t;
C_Contexts *fin;
for (vector<pg_info_t>::iterator p = m->pg_info.begin();
p != m->pg_info.end();
++p) {
+ if (p->pgid.preferred() >= 0) {
+ dout(10) << "ignoring localized pg " << p->pgid << dendl;
+ continue;
+ }
+
ObjectStore::Transaction *t = 0;
C_Contexts *fin = 0;
PG *pg = get_or_create_pg(*p, m->get_epoch(),
int from = m->get_source().num();
if (!require_same_or_newer_map(op, m->epoch)) return;
+ if (m->pgid.preferred() >= 0) {
+ dout(10) << "ignoring localized pg " << m->pgid << dendl;
+ return;
+ }
+
op->mark_started();
if (!_have_pg(m->pgid)) {
if (!require_same_or_newer_map(op, m->query_epoch))
return;
+ if (m->pgid.preferred() >= 0) {
+ dout(10) << "ignoring localized pg " << m->pgid << dendl;
+ return;
+ }
+
PG *pg;
if (!_have_pg(m->pgid)) {
if (!require_same_or_newer_map(op, m->query_epoch))
return;
+ if (m->pgid.preferred() >= 0) {
+ dout(10) << "ignoring localized pg " << m->pgid << dendl;
+ return;
+ }
+
PG *pg;
if (!_have_pg(m->pgid)) {
if (!require_same_or_newer_map(op, m->get_epoch()))
return;
+ if (m->pgid.preferred() >= 0) {
+ dout(10) << "ignoring localized pg " << m->pgid << dendl;
+ return;
+ }
+
op->mark_started();
map< int, map<pg_t,pg_query_t> > query_map;
it != m->pg_list.end();
it++) {
pg_t pgid = it->first;
+
+ if (pgid.preferred() >= 0) {
+ dout(10) << "ignoring localized pg " << pgid << dendl;
+ continue;
+ }
+
PG *pg = 0;
if (pg_map.count(pgid) == 0) {
it != m->pg_list.end();
it++) {
pg_t pgid = *it;
+ if (pgid.preferred() >= 0) {
+ dout(10) << "ignoring localized pg " << pgid << dendl;
+ continue;
+ }
if (pg_map.count(pgid) == 0) {
dout(10) << " don't have pg " << pgid << dendl;