From: Song Baisen Date: Wed, 22 Jun 2016 08:30:46 +0000 (+0800) Subject: mon: PGMonitor add check only concern our self cluster command X-Git-Tag: v12.0.1~483^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d274df7481bc4329ac04c9a25034bfc37d72eed2;p=ceph.git mon: PGMonitor add check only concern our self cluster command we only concern the command send to our self cluster Signed-off-by:song baisen --- diff --git a/src/mon/PGMonitor.cc b/src/mon/PGMonitor.cc index 4ed4a0d92901..2021e7574e39 100644 --- a/src/mon/PGMonitor.cc +++ b/src/mon/PGMonitor.cc @@ -699,6 +699,12 @@ bool PGMonitor::preprocess_pg_stats(MonOpRequestRef op) return true; } + if (stats->fsid != mon->monmap->fsid) { + dout(0) << __func__ << " drop message on fsid " << stats->fsid << " != " + << mon->monmap->fsid << " for " << *stats << dendl; + return true; + } + // First, just see if they need a new osdmap. But // only if they've had the map for a while. if (stats->had_map_for > 30.0 && @@ -1612,6 +1618,12 @@ bool PGMonitor::preprocess_command(MonOpRequestRef op) stringstream ss, ds; bool primary = false; + if (m->fsid != mon->monmap->fsid) { + dout(0) << __func__ << " drop message on fsid " << m->fsid << " != " + << mon->monmap->fsid << " for " << *m << dendl; + return true; + } + map cmdmap; if (!cmdmap_from_json(m->cmd, &cmdmap, ss)) { // ss has reason for failure @@ -1927,6 +1939,11 @@ bool PGMonitor::prepare_command(MonOpRequestRef op) { op->mark_pgmon_event(__func__); MMonCommand *m = static_cast(op->get_req()); + if (m->fsid != mon->monmap->fsid) { + dout(0) << __func__ << " drop message on fsid " << m->fsid << " != " + << mon->monmap->fsid << " for " << *m << dendl; + return true; + } stringstream ss; pg_t pgid; epoch_t epoch = mon->osdmon()->osdmap.get_epoch();