-
Notifications
You must be signed in to change notification settings - Fork 37.7k
[WIP] wallet: use BlockFilterIndex in ScanForWalletTransactions #19116
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
Conversation
LegacyScriptPubKey::GetScriptPubKeys is a stub
facceac
to
55c9ced
Compare
Have you seen #15845 ? It might be easier to take that code and then fix up the two (or three) bugs. |
Concept ACK either way |
@MarcoFalke I hadn't, it seems you took basically the same approach that I intend to. I'll certainly review your PR and read the comments. |
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
this actually works for p2pkh transactions as it is now, benchmarks incoming |
4f96f9e
to
a1d1bc6
Compare
we avoid issues with the keypool expanding during a rescan with the script_pub_key_filter_set flag
a1d1bc6
to
fe107fc
Compare
🐙 This pull request conflicts with the target branch and needs rebase. |
some rescanblockchain benchmarks, from my laptop: 42 minutes on master |
Concept ACK |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concept & approach ACK. Seems to pick up nicely where #15845 left off, updated to work for descriptor and legacy wallets
Concept ACK as I grumpily wait while my wallets are rescanning |
@@ -186,6 +187,20 @@ class ChainImpl : public Chain | |||
} | |||
return nullopt; | |||
} | |||
Optional<bool> filterMatchesAny(const uint256& hash, const GCSFilter::ElementSet& filter_set) override |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please use std::optional
in new code.
There hasn't been much activity lately and the patch still needs rebase. What is the status here?
|
There hasn't been much activity lately and the patch still needs rebase. What is the status here?
|
Marked up for grabs, along with #15845 |
Picked up in #25957 |
goal is to improve rescan performance significantly, lots more work to do