Merge bitcoin/bitcoin#35266: rpc, wallet: add an option to not load the wallet after migrating

0cdd817a82 add release note (Pol Espinasa)
517d37ce3e test: tests wallet migration with load_wallet disabled (Pol Espinasa)
b98dd63da7 rpc: Add load_wallet argument to migratewallet RPC (Pol Espinasa)
4acd063ba6 wallet: make loading the wallet after migrating optional (Pol Espinasa)
97d08d62ba refactor: store wallet names to MigrationResult (Pol Espinasa)

Pull request description:

  This PR is motivated by this [Stack Exchange question](https://bitcoin.stackexchange.com/questions/130713/bitcoin-core-quickest-method-legacy-descriptor-wallet-migration).

  Long story short, someone who has a node pruned before his legacy wallet birthday, is unable to migrate the wallet as it is not possible to load it.

  Loading is not necessary for migration, and migrating without wanting to use the wallet in that node is a valid use-case.

  This PR adds a new RPC argument to `migratewallet` that allow the user disabling the wallet loading.
  Second commits adds tests for it.

  Follow-up: Add an option to the GUI to not load the wallet after migrating.

ACKs for top commit:
  achow101:
    ACK 0cdd817a82
  w0xlt:
    ACK 0cdd817a82
  pablomartin4btc:
    ACK 0cdd817a82

Tree-SHA512: 8389599e63603b1a532e1bfba0b6c652653386c001f5a881bd49843302b74ff4dbaa4131b5b377c24f483d42e0e70a92b96f760244e3c2e2b44ce08cd04ca1e0
This commit is contained in:
merge-script
2026-06-24 21:28:55 +02:00
7 changed files with 209 additions and 34 deletions

7
doc/release-notes-35266 Normal file
View File

@@ -0,0 +1,7 @@
RPC
---
The `migratewallet` RPC now gives the option to not load the descriptor wallet after migrating it from a legacy wallet.
This will now allow pruned nodes to migrate a wallet out of sync below the pruning height.
Note that to use the new wallet it must be loaded to a full node anyway.