From: Sage Weil Date: Tue, 31 Jan 2017 17:31:12 +0000 (-0500) Subject: mon/PGMonitor: clean up some send_pg_creates cruft X-Git-Tag: v11.2.1~169^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=396f3325507cf899433da0a5f4964b81e0c2caa8;p=ceph.git mon/PGMonitor: clean up some send_pg_creates cruft ff1fd4b4b69b52ef5ae734115b1d733aad03b03e already removed most of this; remove the now useless stub and clean up the unneede con check. Signed-off-by: Sage Weil (cherry picked from commit b79a85e80a1a660c5a5746270edb86d3f09cd983) Conflicts: src/mon/PGMonitor.cc --- diff --git a/src/mon/PGMonitor.cc b/src/mon/PGMonitor.cc index 0941f40b2d0..0baeb86639b 100644 --- a/src/mon/PGMonitor.cc +++ b/src/mon/PGMonitor.cc @@ -286,8 +286,12 @@ void PGMonitor::upgrade_format() void PGMonitor::post_paxos_update() { dout(10) << __func__ << dendl; - if (mon->osdmon()->osdmap.get_epoch()) { - send_pg_creates(); + OSDMap& osdmap = mon->osdmon()->osdmap; + if (osdmap.get_epoch()) { + if (osdmap.get_num_up_osds() > 0) { + assert(osdmap.get_up_osd_features() & CEPH_FEATURE_MON_STATEFUL_SUB); + check_subs(); + } } } @@ -928,41 +932,6 @@ void PGMonitor::check_osd_map(epoch_t epoch) propose_pending(); } -void PGMonitor::send_pg_creates() -{ - // We only need to do this old, spammy way of broadcasting create messages - // to every osd (even those that aren't connected) if there are old OSDs in - // the cluster. As soon as everybody has upgraded we can flipt to the new - // behavior instead - OSDMap& osdmap = mon->osdmon()->osdmap; - if (osdmap.get_num_up_osds() == 0) - return; - - if (osdmap.get_up_osd_features() & CEPH_FEATURE_MON_STATEFUL_SUB) { - check_subs(); - return; - } - - dout(10) << "send_pg_creates to " << pg_map.creating_pgs.size() - << " pgs" << dendl; - - utime_t now = ceph_clock_now(g_ceph_context); - for (map > >::iterator p = - pg_map.creating_pgs_by_osd_epoch.begin(); - p != pg_map.creating_pgs_by_osd_epoch.end(); - ++p) { - int osd = p->first; - - // throttle? - if (last_sent_pg_create.count(osd) && - now - g_conf->mon_pg_create_interval < last_sent_pg_create[osd]) - continue; - - if (osdmap.is_up(osd)) - send_pg_creates(osd, NULL, 0); - } -} - epoch_t PGMonitor::send_pg_creates(int osd, Connection *con, epoch_t next) { dout(30) << __func__ << " " << pg_map.creating_pgs_by_osd_epoch << dendl; @@ -1000,13 +969,8 @@ epoch_t PGMonitor::send_pg_creates(int osd, Connection *con, epoch_t next) return next; } - if (con) { - con->send_message(m); - } else { - assert(mon->osdmon()->osdmap.is_up(osd)); - mon->messenger->send_message(m, mon->osdmon()->osdmap.get_inst(osd)); - } - last_sent_pg_create[osd] = ceph_clock_now(g_ceph_context); + con->send_message(m); + last_sent_pg_create[osd] = ceph_clock_now(); // sub is current through last + 1 return last + 1; diff --git a/src/mon/PGMonitor.h b/src/mon/PGMonitor.h index 2fce01200b0..e1c9c822f98 100644 --- a/src/mon/PGMonitor.h +++ b/src/mon/PGMonitor.h @@ -92,7 +92,6 @@ private: void register_new_pgs(); - void send_pg_creates(); epoch_t send_pg_creates(int osd, Connection *con, epoch_t next); /**