On my server my full node Bitcoin Core 0.15.1 can take several minutes, on starting, to "validate blocks". And during that time it's thrashing the disk, slowing down everything else.
So I discovered the assumevalid
command line/configuration parameter which takes a block hash and tells Core to "assume valid" that block and all ancestors. Apparently it's updated when Bitcoin Core releases - and as a result it can be weeks or even months old.
So I created a little script to RPC to my full node and do GetBlockCount
to get the current height, then I subtract 400 and use GetBlockHash
to get the hash for a block about 3 days back. Then I rewrite bitcoin.conf
with that value as the parameter of assumevalid
.
So sure enough Bitcoin Core seems to start faster after doing that.
Is it a good idea? Or more specifically, what could go wrong?