Skip to content
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
merged 8 commits into from
Mar 28, 2019

Commits on Mar 27, 2019

  1. Configuration menu
    Copy the full SHA
    a26a643 View commit details
    Browse the repository at this point in the history
  2. 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.
    wpaulino committed Mar 27, 2019
    Configuration menu
    Copy the full SHA
    b780dfa View commit details
    Browse the repository at this point in the history
  3. 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.
    wpaulino committed Mar 27, 2019
    Configuration menu
    Copy the full SHA
    e98f4d6 View commit details
    Browse the repository at this point in the history
  4. 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.
    wpaulino committed Mar 27, 2019
    Configuration menu
    Copy the full SHA
    c82d73a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    174645f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    23796d3 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    44a01db View commit details
    Browse the repository at this point in the history
  8. 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.
    wpaulino committed Mar 27, 2019
    Configuration menu
    Copy the full SHA
    5cec451 View commit details
    Browse the repository at this point in the history