htlcswitch: add new LinkFailureDisconnect action
In this commit, we add a new LinkFailureDisconnect action that'll be
used if we detect that the remote party hasn't sent a revoke and ack
when it actually should.
Before this commit, we would log our action, tear down the link, but
then not actually force a connection recycle, as we assumed that if the
TCP connection was actually stale, then the read/write timeout would
expire.
In practice this doesn't always seem to be the case, so we make a strong
action here to actually force a disconnection in hopes that either side
will reconnect and keep the good times rollin' 🕺.
This commit is contained in:
5 files changed
+40
-12
No files matched your search
@@ -64,6 +64,11 @@ const (
|
||||
// LinkFailureForceClose indicates that the channel should be force
|
||||
// closed.
|
||||
LinkFailureForceClose
|
||||
|
||||
// LinkFailureDisconnect indicates that we should disconnect in an
|
||||
// attempt to recycle the connection. This can be useful if we think a
|
||||
// TCP connection or state machine is stalled.
|
||||
LinkFailureDisconnect
|
||||
)
|
||||
|
||||
// LinkFailureError encapsulates an error that will make us fail the current
|
||||
|
||||
Reference in new issue
Block a user