1
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?
I think OP may not be talking about the startup check, but about IBD for catching up with new blocks while his node was down. – Pieter Wuille – 2018-01-06T08:01:26.073
@PieterWuille - no I was in fact talking about the startup check. Maybe though the OS file cache was nice and warm (64GB RAM) so it did just seem a lot faster when I stopped/started Core. Hmm, I'll have to really pay attention and find out what exactly, during the splash screen, seemed faster and report back ... thanks! – davidbak – 2018-01-06T18:16:45.427