Hi y'all,
Cross-posting this here as there's a shared user base: btcd recently
released v0.24 which includes several optimization PRs that have been
developed off-and-on for several years now. These optimizations cut down the
sync time from several days, to potentially 6 hours with the right
internet/hardware setup.
I made a mini-thread discussing some of the optimizations here:
https://twitter.com/roasbeef/status/1741287418236649572?t=KgQLwAQgt2-3OuP2WFn-Ng.
The full release notes can be found here:
https://github.com/btcsuite/btcd/releases/tag/v0.24.0.
Aside from syncing improvements:
* Pruning is now finally supported (yay!). Users can use the `--prune=MiB`
flag to activate it. You can retroactively prune a node that's already
synced, or start a new node syncing in a pruned mode. Pruned nodes still
maintain the neutrino filters, so they can still serve light clients.
* Start up time is now _much_ faster due to the inclusion of a head header
skip list index. Start up could at times take a few minutes to load the
header index, and now it should take just seconds.
Last but not least, this release also contains a number of important
**security fixes**. Those running an lnd backed by btcd should update their
btcd node to the latest release. There've been no breaking RPC changes, so
the update should be painless. A public disclosure of the issues will take
place in approximately one month.
-- Laolu