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
-upgradewallet
from pre-HD Split not working as expected
#16193
Comments
-upgradwallet
from pre-HD Split not working-upgradewallet
from pre-HD Split not working
-upgradewallet
from pre-HD Split not working-upgradewallet
from pre-HD Split not working as expected
Hmm, after digging, it looks like it intentionally uses the pre-split pool first before returning internal keypool keys. Non-obvious. A test case demonstrating this behavior would be helpful. |
Is this related to any of these?
|
I think those versions listed are all post-split, is |
This is intended behavior. The pre-split keypool needs to be consumed before hd keys are derived. As for a test case, we can only do that once we get old wallet versions in the test suite. |
What's the blocker on that? |
I read some background on what it would take. Closing this for now, but I'd really like a comment-based explanation of this logic. It really makes little sense to me. |
Maybe related #16091 |
I expected the internal keypool to be filled, and for change addresses to immediately be drawn from that pool. Looking for replication/explanation in case I missed something. Just tested this on master.
-upgradewallet
As you can see, there are 2000 keys now, and knowledge that internal exists, but it's empty. I ask for a change key:
which I save for later, and check keypools again:
The internal keypool grew by one, and external shrunk by 1.
That returned key appears to be an external key based on keypath, though it is marked as
ischange
.Grabbing more keys seems to continue this pattern:
The text was updated successfully, but these errors were encountered: