-
Notifications
You must be signed in to change notification settings - Fork 906
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
Renepay: add channel filters #7403
Merged
ShahanaFarooqui
merged 3 commits into
ElementsProject:master
from
Lagrang3:renepay-filter
Aug 13, 2024
Merged
Renepay: add channel filters #7403
ShahanaFarooqui
merged 3 commits into
ElementsProject:master
from
Lagrang3:renepay-filter
Aug 13, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Lagrang3
force-pushed
the
renepay-filter
branch
3 times, most recently
from
June 17, 2024 08:49
dac3330
to
984ab75
Compare
Lagrang3
force-pushed
the
renepay-filter
branch
from
August 6, 2024 14:04
8107099
to
18cc1f2
Compare
Rebased on top of |
Lagrang3
force-pushed
the
renepay-filter
branch
from
August 7, 2024 10:05
18cc1f2
to
a708216
Compare
This was referenced Aug 7, 2024
Lagrang3
force-pushed
the
renepay-filter
branch
3 times, most recently
from
August 9, 2024 09:15
f5cba0f
to
2b35ec8
Compare
Rebased to fix conflicts 2b35ec8. |
Expecting to have more than just a bunch of disabled channels if we prune the lightning network heavily I am changing the internal data structure of disabledmap from a simple array to a hashtable. Have a finer control over disabled channels by targeting short_channel_id_dir instead of short_channel_id, ie. we can disable a single direction of a channel. Signed-off-by: Lagrang3 <lagrang3@protonmail.com>
We add a channel filtering paymod that disables channels that have very low max_htlc. It can be expanded to consider other properties as well, for instance high base fee, low capacity or high latency. Changelog-Added: renepay: prune the network by disabling channels we don't like, eg. very low max_htlc. Signed-off-by: Lagrang3 <lagrang3@protonmail.com>
msggen cannot handle the complex type in renepay-exclude, therefore I added a rule override for it, just like pay-exclude. ``` msggen cln-grpc/proto/node.proto Traceback (most recent call last): File "/home/rusty/devel/cvs/lightning/contrib/msggen/msggen/__main__.py", line 131, in <module> main() File "/home/rusty/devel/cvs/lightning/contrib/msggen/msggen/__main__.py", line 115, in main run() File "/home/rusty/devel/cvs/lightning/contrib/msggen/msggen/__main__.py", line 72, in run service = load_jsonrpc_service( ^^^^^^^^^^^^^^^^^^^^^ File "/home/rusty/devel/cvs/lightning/contrib/msggen/msggen/utils/utils.py", line 241, in load_jsonrpc_service methods = [load_jsonrpc_method(name) for name in grpc_method_names] ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/rusty/devel/cvs/lightning/contrib/msggen/msggen/utils/utils.py", line 209, in load_jsonrpc_method request = CompositeField.from_js(schema["methods"][rpc_name]['request'], path=name) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/rusty/devel/cvs/lightning/contrib/msggen/msggen/model.py", line 297, in from_js field = ArrayField.from_js(fpath, ftype) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/rusty/devel/cvs/lightning/contrib/msggen/msggen/model.py", line 464, in from_js itemtype = UnionField.from_js(child_js, path) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/rusty/devel/cvs/lightning/contrib/msggen/msggen/model.py", line 393, in from_js itemtype = PrimitiveField( ^^^^^^^^^^^^^^^ TypeError: PrimitiveField.__init__() missing 2 required positional arguments: 'added' and 'deprecated' ``` Signed-off-by: Lagrang3 <lagrang3@protonmail.com> Changelog-EXPERIMENTAL: renepay: add cli option "exclude" to manually disable channels and nodes.
rustyrussell
force-pushed
the
renepay-filter
branch
from
August 13, 2024 03:52
2b35ec8
to
25a1541
Compare
Rebased to fix conflicts, but I had to merge many of the commits together to make it compile at each point! |
Ack 25a1541 |
Is this a conventional requirement? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
We add a channel filtering paymod that disables channels that have very
low max_htlc. It can be expanded to consider other properties as well,
for instance high base fee, low capacity or high latency.
This PR depends on #7337 and #7357.