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

Add a generic lightning client which can sync from any node #4197

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

TheBlueMatt
Copy link
Contributor

This is kinda hacked up, is missing some stuff, and isn't tested, just opening to show what this would look like and get feedback on if this is worth doing.

Reasons to consider this:

  • Doesn't require a local lightning node - just point this at one (or more) lightning nodes' P2P ports and it'll fetch the graph
  • Gives mempool lower-level access to lightning gossip data, with raw messages locally in-memory destructured into Javascript (WASM) classes
  • Could remove the existing multi-implementation API, though I'm not sure there's any reason to do that unless there's some additional info we want that isn't available reliably in all RPCs (Show lightning channel disable bit (and maybe some historical info) #4117 maybe? though its probably available)

Reasons not to do this:

  • Mostly performance - syncing the lightning gossip data requires verifying that the gossip data actually matches the chain, which requires quite some traffic to the blockchain API backend (not yet fully implemented, but you can see roughly what it looks like)
  • Takes on a chunky WASM blob dependency.

@cla-bot
Copy link

cla-bot bot commented Aug 21, 2023

Thanks for your contribution to The Mempool Open Source Project. We require all contributors to agree to our Contributor License Agreement and don't seem to have one for you on file. Please see the instructions in CONTRIBUTING.md to proceed with this pull request.

@cla-bot
Copy link

cla-bot bot commented Aug 21, 2023

Thanks for your contribution to The Mempool Open Source Project. We require all contributors to agree to our Contributor License Agreement and don't seem to have one for you on file. Please see the instructions in CONTRIBUTING.md to proceed with this pull request.

@TheBlueMatt
Copy link
Contributor Author

Wat, bro, there is one in master, do you not like its format?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant