-
Notifications
You must be signed in to change notification settings - Fork 912
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fail to force close channel when received SCB from LND who keeps terminating connection because they don't understand our message #5876
Comments
There was a change in the ln spec a while ago, in which Eclair asked us not to force close automatically if we detect they're lagging behind (allowing for a last ditch attempt at maybe restoring a more up to date backup). So I'm tempted to say that we're correct and that we should close only when asked further. |
Found the LN spec issue here: lightning/bolts#934 and the local tracking issue here #4927 This suggests that lnd should be sending an error in reply to our warning so we know we should be force closing. |
Yep. I've been contacted several times now (thrice, I think) by node operators who have restored a static channel backup and don't understand why my node is not force-closing when they connect to it and present an outdated Kudos for implementing the spec! Maybe LND will too one of these days. 😉 |
Hey @cdecker I checked out that link, but is isn't actually a concrete spec change, instead it's an issue outlining an alternative interpretation and amendment to the spec. When it was brought up in the spec meeting, I gave pause as I envisioned scenarios like the ones our users are running into today, wherein they attempt to recover their funds, but end up in a stuck situation (potentially losing to suspended/lost funds). Rolling out the change proposed change also wouldn't be super easy as it would be new clients modifying their behavior from the PoV of old clients that rely on such behavior. If we want to consider amending the spec, then I think we should do so via a new feature bit, something like |
Ok, so I was wrong above: there was a spec change to stop closing as soon as you get a bad We dug a bit into the changes in the past release and found this: b698a5a#diff-b1299b24697159a06e7b426c5086c36df8e48db15739a0e301d53a9a21149722R3005-R3006. From my reading, before CLN would send an error, then force close. With the above change, CLN will now send an a IIUC, the impact of the above change is that:
I think if behavior is changed to send the warning, but not disconnect (so the |
Hi, if you get in touch with LND peers having the issue. Can you have them try this: lightningnetwork/lnd#7301 (comment) ? LND dev wants to know if it work. |
Uhh, okay, I will, but damn, that's way too complicated for 99% of users, who are not developers. |
Given that the solution linked to above might be too complicated and a problem for users running Umbrel and other node packaging solutions where running a custom version of Steps (alternative to running the custom version of
|
Indeed, it looks like we issue warning then we take our toys and go home. Let's see if I can reproduce, then fix. We need to keep listening, in case there's an error... |
Issue and Steps to Reproduce
I have described the incident here on LND repo
It looks to me that it's half our fault not force closing the channel when we know that the revocation numbers don't match. This is shown on the listpeers:
I was able to force close it manually
getinfo
output"version": "v22.11.1"
The text was updated successfully, but these errors were encountered: