]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mon/MgrStatMonitor: ignore MMgrReport from non-active mgr 40219/head
authorSage Weil <sage@newdream.net>
Thu, 18 Mar 2021 16:45:48 +0000 (11:45 -0500)
committerSage Weil <sage@newdream.net>
Thu, 18 Mar 2021 17:00:01 +0000 (12:00 -0500)
commit4d447092c3542bf57dfb4942db766adf2923c069
tree075b004871ab808d7fede639f76e86e447fc6d3f
parent3dbc1f0578d944217ad2bacb58ef561e678abb6c
mon/MgrStatMonitor: ignore MMgrReport from non-active mgr

If it's not the active mgr, we should ignore it.

Since the mgr instance is best identified by the gid, add that to the
message.  (We can't use the source_addrs for the message since that is
the MgrStandby monc addr, not the active mgr addrs in the MgrMap.)

This fixes a problem where a just-demoted mgr report gets processed and a
new mgr gets a ServiceMap with an epoch >= its pending map.  (At least,
that is my theory!)

Fixes: https://tracker.ceph.com/issues/48022
Signed-off-by: Sage Weil <sage@newdream.net>
src/messages/MMonMgrReport.h
src/mgr/DaemonServer.cc
src/mon/MgrStatMonitor.cc