diff options
author | Andrew Chow <github@achow101.com> | 2023-06-22 13:12:06 -0400 |
---|---|---|
committer | Andrew Chow <github@achow101.com> | 2023-06-22 13:20:36 -0400 |
commit | 6a473373d4953cabbb219eae8b709150a45796e6 (patch) | |
tree | 9c53c20114a45eb259e920fac6fabcf39acdbdc9 /contrib/guix/manifest.scm | |
parent | a7261da479c2dffb89694b17c4f446ea0b302f34 (diff) | |
parent | 1c7d08b9acd33aff343228ada7e058e606cb1062 (diff) | |
download | bitcoin-6a473373d4953cabbb219eae8b709150a45796e6.tar.xz |
Merge bitcoin/bitcoin#27862: validation: Stricter assumeutxo error handling when renaming chainstates
1c7d08b9acd33aff343228ada7e058e606cb1062 validation: Stricter assumeutxo error handling in InvalidateCoinsDBOnDisk (Ryan Ofsky)
9047337d369d800e6eca4d3b686139073a8e8905 validation: Stricter assumeutxo error handling in LoadChainstate (Ryan Ofsky)
Pull request description:
There are two places in assumeutxo code where it is calling `AbortNode` to trigger asynchronous shutdowns without returning errors to calling functions.
One case, in `LoadChainstate`, happens when snapshot validation succeeds, and there is an error trying to replace the background chainstate with the snapshot chainstate.
The other case, in `InvalidateCoinsDBOnDisk`, happens when snapshot validatiion fails, and there is an error trying to remove the snapshot chainstate.
In both cases the node is being forced to shut down, so it makes sense for these functions to raise errors so callers can know that an error happened without having to infer it from the shutdown state.
Noticed these cases while reviewing #27861, which replaces the `AbortNode` function with a `FatalError` function.
ACKs for top commit:
achow101:
ACK 1c7d08b9acd33aff343228ada7e058e606cb1062
TheCharlatan:
ACK 1c7d08b9acd33aff343228ada7e058e606cb1062
jamesob:
ACK 1c7d08b9acd33aff343228ada7e058e606cb1062 ([`jamesob/ackr/27862.1.ryanofsky.validation_stricter_assu`](https://github.com/jamesob/bitcoin/tree/ackr/27862.1.ryanofsky.validation_stricter_assu))
Tree-SHA512: fb1dcde3fa0e77b4ba0c48507d289552b939c2866781579c8e994edc209abc3cd29cf81c89380057199323a8eec484956abb1fd3a43c957ecd0e7f7bbfd63fd8
Diffstat (limited to 'contrib/guix/manifest.scm')
0 files changed, 0 insertions, 0 deletions