From: Sage Weil Date: Fri, 29 Apr 2016 19:44:04 +0000 (-0400) Subject: osd: pay attention to shard when setting role X-Git-Tag: v11.0.0~664 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=33a2e3797d54961ed09ca86f6f4eb5ff21093929;p=ceph.git osd: pay attention to shard when setting role This matches start_peering_interval(). Signed-off-by: Sage Weil --- diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 7b864a52f776..8b905bf199d4 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -3222,7 +3222,10 @@ void OSD::load_pgs() up_primary, primary); int role = OSDMap::calc_pg_role(whoami, pg->acting); - pg->set_role(role); + if (pg->pool.info.is_replicated() || role == pg->pg_whoami.shard) + pg->set_role(role); + else + pg->set_role(-1); pg->reg_next_scrub();