-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
channeldb+routing+discovery: reject zombie announcements #2777
Merged
Roasbeef
merged 8 commits into
lightningnetwork:master
from
wpaulino:reject-zombie-anns
Mar 28, 2019
Merged
channeldb+routing+discovery: reject zombie announcements #2777
Roasbeef
merged 8 commits into
lightningnetwork:master
from
wpaulino:reject-zombie-anns
Mar 28, 2019
Commits on Mar 27, 2019
-
Configuration menu - View commit details
-
Copy full SHA for a26a643 - Browse repository at this point
Copy the full SHA a26a643View commit details -
channeldb: add zombie edge index
In this commit, we add a zombie edge index to the database. This allows us to quickly determine across restarts whether we're attempting to process an edge we've previously deemed as zombie.
Configuration menu - View commit details
-
Copy full SHA for b780dfa - Browse repository at this point
Copy the full SHA b780dfaView commit details -
channeldb: extend DeleteChannelEdge to mark edge as zombie
We mark the edges as zombies when pruning them to ensure we don't attempt to reprocess them later on. This also applies to channels that have been removed from the graph due to being stale.
Configuration menu - View commit details
-
Copy full SHA for e98f4d6 - Browse repository at this point
Copy the full SHA e98f4d6View commit details -
channeldb+routing: extend edge lookup methods with zombie index check
In this commit, we extend the graph's FetchChannelEdgesByID and HasChannelEdge methods to also check the zombie index whenever the edge to be looked up doesn't exist within the edge index. We do this to signal to callers that the edge is known, but only as a zombie, and the only information that we have about the edge are the node public keys of the two parties involved in the edge. In the event that an edge does exist within the zombie index, we make an additional check on edge policies to ensure they are not within the router's pruning window, indicating that it is a fresh update.
Configuration menu - View commit details
-
Copy full SHA for c82d73a - Browse repository at this point
Copy the full SHA c82d73aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 174645f - Browse repository at this point
Copy the full SHA 174645fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 23796d3 - Browse repository at this point
Copy the full SHA 23796d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 44a01db - Browse repository at this point
Copy the full SHA 44a01dbView commit details -
discovery: reject announcements for known zombie edges
In this commit, we leverage the recently introduced zombie edge index to quickly reject announcements for edges we've previously deemed as zombies. Care has been taken to ensure we don't reject fresh updates for edges we've considered zombies.
Configuration menu - View commit details
-
Copy full SHA for 5cec451 - Browse repository at this point
Copy the full SHA 5cec451View commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.