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

Node Reminders #84

Merged
merged 9 commits into from
Sep 18, 2024
Merged

Commits on Aug 28, 2024

  1. Parametrize prune interval.

    Create a config variable representing the time interval whereafter
    graph data gets pruned. This value should be used to limit lookup
    time frames.
    arik-so committed Aug 28, 2024
    Configuration menu
    Copy the full SHA
    71b7345 View commit details
    Browse the repository at this point in the history
  2. Rename latest_details_after_seen to latest_details.

    If the latest node details have already been seen by a client, we
    still need to store them for correctly detecting reminder necessity
    in the future.
    arik-so committed Aug 28, 2024
    Configuration menu
    Copy the full SHA
    86104e5 View commit details
    Browse the repository at this point in the history

Commits on Sep 18, 2024

  1. Upgrade LDK to 0.0.124.

    arik-so committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    8219e5d View commit details
    Browse the repository at this point in the history
  2. Only consider node announcements from current graph.

    We want to ignore any node announcements that have already been
    pruned. To do so, we extract all the node IDs from the network graph,
    and use those to filter our queries.
    arik-so committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    63aaf61 View commit details
    Browse the repository at this point in the history
  3. Extract snapshot reminder inclusion check method.

    We will need to determine whether or not a snapshot should include
    reminders for both channel and node update messages. To prepare for
    that, we extract the decision logic into its own method.
    arik-so committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    f46b5ec View commit details
    Browse the repository at this point in the history
  4. Introduce node serialization strategy.

    With the addition of reminders, we may encounter scenarios where
    either a bit flip may suffice, instructing the client to look up its
    latest data, or we may need to serialize all announcement details
    a new if the client may have already purged the old data.
    
    To better distinguish between these scenarios, we introduce a
    serialization strategy enum that allows serializing either the full
    announcement, just the mutations, or serve solely as a reminder and
    serialize nothing at all.
    arik-so committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    c9aaf09 View commit details
    Browse the repository at this point in the history
  5. Send full node announcements following old pre-sync updates.

    This covers the following part of our serialization logic:
    
    If the pre-sync update was more than 6 days ago, serialize in full.
    arik-so committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    1d78373 View commit details
    Browse the repository at this point in the history
  6. Pin tokio-macros to 1.63.0.

    arik-so committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    a9674f7 View commit details
    Browse the repository at this point in the history
  7. Pin postgres-types to 0.2.6.

    arik-so committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    d7a9d62 View commit details
    Browse the repository at this point in the history