]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
PG: set child up/acting in split_into
authorSamuel Just <sam.just@inktank.com>
Tue, 20 Nov 2012 03:58:43 +0000 (19:58 -0800)
committerSamuel Just <sam.just@inktank.com>
Fri, 7 Dec 2012 06:53:06 +0000 (22:53 -0800)
Signed-off-by: Samuel Just <sam.just@inktank.com>
src/osd/PG.cc

index da843ea037d0f207f9c9fed7b1091ccdb3eca2bd..03f118782920dfdcb1bab2787d8117402f733f69 100644 (file)
@@ -2033,6 +2033,11 @@ void PG::split_into(pg_t child_pgid, PG *child, unsigned split_bits)
 
   child->snap_trimq = snap_trimq;
 
+  get_osdmap()->pg_to_up_acting_osds(child->info.pgid, child->up, child->acting);
+  child->role = get_osdmap()->calc_pg_role(osd->whoami, child->acting);
+  if (get_primary() != child->get_primary())
+    child->info.history.same_primary_since = get_osdmap()->get_epoch();
+
   // History
   child->past_intervals = past_intervals;