core: don't deregister Router handles until Broker exit.
Lots of "invalid handle: ..., 102" messages started appearing during exit recently because ordering changed slightly, and local handles were sent _DEAD even though the broker loop was still progressing through shutdown. The "shutdown" event is too early to close handles: it is the start of the grace period where streams and downstream contexts can finish up any work and deliver buffered data, including FORWARD_LOG messages that haven't arrived yet. So instead, - move the _DEAD logic to the "exit" event, - get rid of Context.on_shutdown() entirely, it's been unused for over a month, - get rid of the "crash" event, since it always fires prior to "exit", and its only use was to send _DEAD to local handles, which now happens during exit anyway.pull/193/head
parent
813d139d48
commit
38c0ad1eea
Loading…
Reference in New Issue