diff options
author | Greg Farnum <greg@inktank.com> | 2013-04-26 15:27:39 -0700 |
---|---|---|
committer | Greg Farnum <greg@inktank.com> | 2013-04-26 15:27:51 -0700 |
commit | 0650fa956ac1349dd1010c9223b82c762e15a7c0 (patch) | |
tree | 9e84a59da9d6722ab6055f468e64d53f2cc7b4bb | |
parent | 1e6f02b337767012aeb387da9582cd7ad5a03084 (diff) | |
download | ceph-0650fa956ac1349dd1010c9223b82c762e15a7c0.tar.gz |
monitor: assert out early if we get our own sync_start back
Signed-off-by: Greg Farnum <greg@inktank.com>
-rw-r--r-- | src/mon/Monitor.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mon/Monitor.cc b/src/mon/Monitor.cc index 0b4a44f1649..739f9b9d182 100644 --- a/src/mon/Monitor.cc +++ b/src/mon/Monitor.cc @@ -764,6 +764,13 @@ void Monitor::handle_sync_start(MMonSync *m) { dout(10) << __func__ << " " << *m << dendl; + /** + * This looks a bit odd, but we've seen cases where sync start messages + * get bounced around and end up at the originator without anybody + * noticing! + */ + assert(m->reply_to != messenger->get_myinst()); + /* If we are not the leader, then some monitor picked us as the point of * entry to the quorum during its synchronization process. Therefore, we * have an obligation of forwarding this message to leader, so the sender |