Need to rescan every time I reopen my wallet

2 replies 71 views
DarkSeedSenior Member
Posts: 209 · Reputation: 1423
#1Nov 9, 2022, 07:22 PM
I managed to load an old wallet and saw all the transactions were there with labels and everything looking good. But man, it took like 14 hours to rescan when I tried to open it. I only found out by checking the debug.log file since the GUI just showed a blue loading bar with no updates. So I shut the wallet down, and it warned me that if I close it for too long, I might have to rescan. But honestly, I only closed it for a quick sec to open another wallet. Now it’s rescanning from 0.49% for some odd reason (the first time it started from 0%). I bailed on it because I think that other wallet is empty anyway. When I loaded the other wallet again, it was also stuck at around 0.49%. What’s going on? All my funds were visible, so why is it rescanning again for the same wallet? Am I really gonna waste another 8 hours on this? This is ridiculous. It seems like once you load a wallet, you can’t close any without issues. I thought a rescan would cover all wallets, but if I have to wait 14 hours every single time (or 8 if it starts at 0.49% for some reason), that’s seriously not user-friendly. Edit: I closed Bitcoin and opened it again, then tried to access the wallet that was previously working (the one with funds), and it popped up right away. So it looks like it was trying to do a rescan for the other wallet and wouldn’t let me open the one that had already been rescanned. Are the files in the database folder what allows it to load right after the rescan finishes? When I backed up using the "Backup Wallet" option, what happened?
6 Reply Quote Share
gr3g.0rbitHero Member
Posts: 1025 · Reputation: 2646
#2Nov 10, 2022, 12:20 AM
Yes, you don't actually have to use the "Close Wallet" menu every time you need to shutdown the node. Doing so will make it out-of-date to the new blocks while it's unloaded, thus it needs to rescan those blocks that it haven't scanned yet. But the questions is, why does it takes too long to rescan something that's closed just a few moments ago... Because it only needs to scan a block or two in that case. E.g.: In the debug.log, you should see something like this, where it states the starting block, that should continue from the block height when you closed the wallet: How do you reload the wallet that's been closed? "Open Wallet" or "Restore Wallet"? (the former should be used in this case) Is the node set in pruned mode with low prune size setting? What does that 0.49% looks like, a stand-alone progress bar? (a screenshot of that progress bar would be nice)
2 Reply Quote Share
im_lynxHero Member
Posts: 515 · Reputation: 2161
#3Nov 10, 2022, 02:25 AM
Just an additional idea: does OP have txindex=1 and specifically blockfilterindex=1 in his bitcoin.conf config file? Having a blockfilter index speeds up rescanning with recent versions of Bitcoin Core significantly! I would assume this is also working for Knots (I remember OP mentioned he uses Knots but didn't mention it in this topic). I have currently 8 concurrent wallets open in my non-pruned Bitcoin Core where some of them are just watch-only ones and a few hot testing wallets with no funds. I don't close them because that's not really necessary for me. All load very quickly, even when two of the watch-only wallets have nearly 22k descriptors each.
2 Reply Quote Share

Related topics