]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osdc/Objecter: use overlay pg_pool_t for subsequent calculations
authorSage Weil <sage@redhat.com>
Fri, 10 Feb 2017 04:02:05 +0000 (23:02 -0500)
committerSage Weil <sage@redhat.com>
Tue, 14 Feb 2017 04:03:52 +0000 (23:03 -0500)
We use pi for pg_num and other values below; we need to update accordingly
if we follow the overlay.

Signed-off-by: Sage Weil <sage@redhat.com>
src/osdc/Objecter.cc

index a495ed99017fa75cf96bf69ab097f48272d3eec1..2567b990894050917de3311abd0384188fa91c6f 100644 (file)
@@ -2694,6 +2694,11 @@ int Objecter::_calc_target(op_target_t *t, Connection *con, bool any_change)
       t->target_oloc.pool = pi->read_tier;
     if (is_write && pi->has_write_tier())
       t->target_oloc.pool = pi->write_tier;
+    pi = osdmap->get_pg_pool(t->target_oloc.pool);
+    if (!pi) {
+      t->osd = -1;
+      return RECALC_OP_TARGET_POOL_DNE;
+    }
   }
 
   pg_t pgid;