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

chainntnfs: leverage batched JSON-RPC requests to speed up spend/conf rescans #5041

Open
Roasbeef opened this issue Feb 17, 2021 · 1 comment
Labels
bitcoind Bitcoin Core backend btcd enhancement Improvements to existing features / behaviour intermediate Issues suitable for developers moderately familiar with the codebase and LN json-rpc optimization P2 should be fixed if one has time

Comments

@Roasbeef
Copy link
Member

With this PR btcd has now gained support for being able to respond to batched JSON-RPC requests. The client has also been updated to allow several requests to be fired off in a single message as well. bitcoind has supported this feature for some time itself. With this new client-side capability, we can being to take advantage of the now available request pipelining to be able to speed up several interactions within lnd itself.

The goal here is to use the batch JSON-RPC requests to fetch several blocks/transactions/hashes in a single message where relevant across the codebase. Porting over the chainntnfs package to be aware of this new capabilities may serve to significantly speed up long running rescans, spend notification rescans, and also confirmation rescans. We can also extend this into btcwallet itself to speed up the initialization of the wallet, as well as seed import and other on demand rescan attempts.

@Roasbeef Roasbeef added enhancement Improvements to existing features / behaviour intermediate Issues suitable for developers moderately familiar with the codebase and LN bitcoind Bitcoin Core backend optimization btcd json-rpc labels Feb 17, 2021
@Roasbeef Roasbeef added the P2 should be fixed if one has time label Aug 31, 2021
@Roasbeef Roasbeef added this to the v0.15.0 milestone Aug 31, 2021
@Roasbeef Roasbeef modified the milestones: v0.15.0, v0.16.0 Feb 2, 2022
@Roasbeef
Copy link
Member Author

Roasbeef commented Aug 8, 2022

This PR in btcwallet may resolve this issue: btcsuite/btcwallet#807

@Roasbeef Roasbeef moved this to 👀 In review in lnd v0.16.0 Aug 23, 2022
@saubyk saubyk modified the milestones: v0.16.0, v0.16.1 Dec 2, 2022
@saubyk saubyk removed this from lnd v0.16.0 Dec 2, 2022
@saubyk saubyk removed this from the Medium Priority milestone Aug 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bitcoind Bitcoin Core backend btcd enhancement Improvements to existing features / behaviour intermediate Issues suitable for developers moderately familiar with the codebase and LN json-rpc optimization P2 should be fixed if one has time
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants