shrub/pkg/arvo/sys
Philip Monk e7c8a44e11
ames: recover from mismatched message nums
We've seen issues where the message-num of the head of live.state is
less than current.state.  When this happens, we continually try to
resend message n-1, but we throw away any acknowledgment for n-1 because
current.state is already n.  This halts progress on that flow.

We don't know what causes us to get in this bad state, so this adds an
assert to the packet pump that we're in a good state, run every time
the packet pump is run.  When this crashes, we can turn on |ames-verb
and hopefully identify the cause.

This also adds logic to +on-wake in the packet pump to not try to resend
any messages that have already been acknowledged.  This is just to
rescue ships that currently have these stuck flows.

(Incidentally, I'd love to have a rr-style debugger for stuff like this.
Just run a command that says "replay my event log watching for this
specific condition and then stop and let me poke around".)
2019-12-09 23:31:18 -08:00
..
vane ames: recover from mismatched message nums 2019-12-09 23:31:18 -08:00
arvo.hoon arvo: remove unneeded top-level mock 2019-12-02 20:52:59 -08:00
hoon.hoon Revert "Revert "hoon: zpgl -> zpld for consistency"" 2019-12-02 20:47:47 -08:00
zuse.hoon Merge branch 'pkova/master' (#1991) 2019-12-05 16:38:57 +08:00