df: rework closing logic

Trying to put all the disconnect logic into the same path was a dumb
idea. If you asked to reconnect but passed in an 'unsaved' channel, we
would not call the 'reconnect' code.

Instead, we make a differentiation between "unsaved" channels
(ones that we haven't received commitment tx for) and handle the
disconnect for these separate from where we want to do a reconnect.
This commit is contained in:
niftynei
2021-05-11 11:58:00 -05:00
committed by Rusty Russell
parent efdc36c8e9
commit 71a4a2e31c
10 changed files with 66 additions and 101 deletions

View File

@@ -481,10 +481,7 @@ def test_reconnect_openingd(node_factory):
l1.rpc.connect(l2.info['id'], 'localhost', l2.port)
# We should get a message about reconnecting.
if l2.config('experimental-dual-fund'):
l2.daemon.wait_for_log('Killing dualopend: Reconnected')
else:
l2.daemon.wait_for_log('Killing opening daemon: Reconnected')
l2.daemon.wait_for_log('Killing opening daemon: Reconnected')
l2.daemon.wait_for_log('Handed peer, entering loop')
# Should work fine.