From: Kefu Chai Date: Fri, 31 Mar 2017 10:32:41 +0000 (+0800) Subject: osd/OSDMap: use _pg_to_up_acting_osds() to get_pg_acting_primary() X-Git-Tag: v12.0.2~247^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8a3b48551a15c5e61ace324b00a5b7508eddbc0b;p=ceph.git osd/OSDMap: use _pg_to_up_acting_osds() to get_pg_acting_primary() avoid unnecessary swap() call of vector which will be dropped on the floor after getting its first element, which can be retrieved using another parameter using _pg_to_up_acting_osds() directly. Signed-off-by: Kefu Chai --- diff --git a/src/osd/OSDMap.h b/src/osd/OSDMap.h index 856793bdaa23c..eb0399edda6e9 100644 --- a/src/osd/OSDMap.h +++ b/src/osd/OSDMap.h @@ -800,11 +800,9 @@ public: // pg -> acting primary osd int get_pg_acting_primary(pg_t pg) const { - vector group; - int nrep = pg_to_acting_osds(pg, group); - if (nrep > 0) - return group[0]; - return -1; // we fail! + int primary = -1; + _pg_to_up_acting_osds(pg, nullptr, nullptr, nullptr, &primary); + return primary; } /*