> validation: Stricter assumeutxo error handling in LoadChainstate
>
> Make LoadChainstate return an explicit error when snapshot validation succeeds,
> but there is an error trying to replace the background chainstate with the
> snapshot chainstate. Previously in this case LoadChainstate would trigger a
> shutdown and return INTERRUPTED, now it will return an actual error code.
>
> There's no real change to behavior other than error message being formatted a
> little differently.
>
> Motivation for this change is to replace error handling via callbacks with
> error handling via return value ahead of
> https://github.com/bitcoin/bitcoin/pull/27861
https://github.com/bitcoin/bitcoin/pull/27862/commits/1c7d08b9acd33aff343228ada7e058e606cb1062
> validation: Stricter assumeutxo error handling in InvalidateCoinsDBOnDisk
>
> Currently InvalidateCoinsDBOnDisk is calling AbortNode without an error to the
> caller if it fails. Change it to return just return util::Result, and update
> the caller to handle the error itself.
>
> This causes the secondary error to be shown below the main error instead of the
> other way around.
https://github.com/bitcoin/bitcoin/pull/27862/commits/1c7d08b9acd33aff343228ada7e058e606cb1062
This is a backport of core#27862