Ask questionsinitial walletpassphrase slow and freezing

When running walletpassphrase on a large wallet.dat (ie about 300,000 segwit P2SH addresses) the command sometimes takes a very long time, and if command is run multiple times at once (while running slow) it causes bitcoin core to freeze (stops syncing and requires kill -9 to stop/restart)

During the locked up walletpassphrase commands being run the following messages start to appear in the debug.log:

018-01-24 01:01:04 socket sending timeout: 1201s

Note that this problem is intermittent, so sometimes the command runs instantly, other times it takes a few minutes, and other times it completely freezes the node.


Answer questions jonasschnelli

Bitcoin-Core is currently not optimized for wallets that large. During walletpassphrase, each key gets a AES256CBC decryption (in your case 300'000) and all the decrypted keys are kept in memory. During the time of that decryption process, the main lock is held which can lead to disconnects on the p2p side.

Jonas Schnelli jonasschnelli Bitcoin Core Basel/Zurich Switzerland Bitcoin Core Developer & Maintainer
Github User Rank List