-
Notifications
You must be signed in to change notification settings - Fork 871
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
Fix gossip code when channels are marked dying #7057
Fix gossip code when channels are marked dying #7057
Commits on Feb 11, 2024
-
pyln-testing: dump gossip store when we complain about bad gossip.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for 926c0ec - Browse repository at this point
Copy the full SHA 926c0ecView commit details -
devtools: remove warning message from dump-gossipstore.
It prints a message to stderr, but actually it's fine with this version: ``` dump-gossipstore: UNKNOWN GOSSIP minor VERSION 14 (expected 12) ``` Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for 3d003e7 - Browse repository at this point
Copy the full SHA 3d003e7View commit details -
common: add gossmap_chan_is_dying() helper to check flags.
And fix up gossip_store backwards comment! Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for e8061f2 - Browse repository at this point
Copy the full SHA e8061f2View commit details -
gossipd: clean up flags accessors.
We want to be able to clear them, and fetch them. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for 8c16ce0 - Browse repository at this point
Copy the full SHA 8c16ce0View commit details -
gossipd: set dying flag on node_announcement when all channels are dy…
…ing. This avoids us gossiping about nodes which don't have live channels. Interstingly, we previously tested that we *did* gossip such node announcements, and now we fix that test. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for 49c315b - Browse repository at this point
Copy the full SHA 49c315bView commit details -
gossipd: make sure to unmark dying node_announcement if we see a new …
…channel! Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for 873c5ee - Browse repository at this point
Copy the full SHA 873c5eeView commit details -
gossipd: when applying a new channel_update, preserve the dying flag.
We can update dying channels, though it seems weird! We accept gossip about them, we just don't propagate it. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for 3bb9a96 - Browse repository at this point
Copy the full SHA 3bb9a96View commit details -
gossipd: preserve the dying flag when moving node_announcement.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for e9cb450 - Browse repository at this point
Copy the full SHA e9cb450View commit details -
gossipd: set dying flag on node_announcements when initially created.
We accept node_announcements on dying channels, but make sure we set the dying flag it channels are alll dying. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for d21dbe2 - Browse repository at this point
Copy the full SHA d21dbe2View commit details -
gossipd: don't consider dying channels when seeking preceeding channe…
…l_announcements. We make sure a node_announcement is preceeded by at least one channel_announcement, but dying ones don't count (as they are not broadcast!). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for c0f533b - Browse repository at this point
Copy the full SHA c0f533bView commit details -
gossipd: make sure to mark node_announcement dying if we fast-path re…
…move last channel. Normally, channels are marked dying, the 12 blocks later, removed. But for local channels, we can access any spliced channel already, so we remove them immediately from our local gossip. This left a hole in our logic, if that channel was the last one keeping a node_announcement alive. Solution is to unify with the "moved node_announcement" path. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for 3937855 - Browse repository at this point
Copy the full SHA 3937855View commit details
Commits on Feb 12, 2024
-
connectd: don't suppress channel_announcement without channel_update …
…yet. This happens if: 1. The peer sets a timestamp filter to non-zero, and 2. We have a channel_announcement without a channel_update. The timestamp is 0 as a placeholder as part of the recent gossip rework (we used to hold these channel_announcement in memory, which was complex). But this means we won't send it in this case, and if we later send the channel_update, CI will complain about 'Bad gossip order'. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Configuration menu - View commit details
-
Copy full SHA for 90cfc18 - Browse repository at this point
Copy the full SHA 90cfc18View commit details