Faster Wallet IBD/rescan
The wallet now interacts with the database via a single global bolt.Tx, which is committed every 2 minutes or when durability is required (e.g. before reporting the balance). In testing on my SSD, this sped up a full rescan about 5x. This sort of speedup is important because some of the new wallet functionality (e.g. InitSeed
and SweepSeed
) requires rescanning.
A further step to take here would be to remove the references to w.dbTx
in a bunch of places and instead make it implicit. The only reason I decided against this was that it makes it very difficult to work with any sort of bolt.Tx that isn't w.dbTx
.