The heartbeat start message comes from hbin messenger, which has no port
and a nonce of the pid (at startup). When we mark ourselves down/up, and
then resend a start, the peer will send a RESETSESSION and the stat
message will get lost, and then we'll miss heartbeats.
Mark down all connections, so that when we reconnect, our start message
is not lost.
Signed-off-by: Sage Weil <sage@newdream.net>
virtual void mark_down(Connection *con) = 0;
virtual void mark_down_on_empty(Connection *con) = 0;
virtual void mark_disposable(Connection *con) = 0;
+ virtual void mark_down_all() = 0;
virtual Connection *get_connection(const entity_inst_t& dest) = 0;
if (r != 0)
do_shutdown = true; // FIXME: do_restart?
+ hbin_messenger->mark_down_all();
+
reset_heartbeat_peers();
}
}