Crate bitcoin_chainman

source ·

Structs

  • | Provides an interface for creating | and interacting with one or two chainstates: | an IBD chainstate generated by downloading | blocks, and an optional snapshot chainstate | loaded from a UTXO snapshot. Managed | chainstates can be maintained at different | heights simultaneously. | | This class provides abstractions that | allow the retrieval of the current most-work | chainstate (“Active”) as well as chainstates | which may be in background use to validate | UTXO snapshots. | | Definitions: | | -IBD chainstate*: a chainstate whose | current state has been “fully” validated | by the initial block download process. | | -Snapshot chainstate*: a chainstate | populated by loading in an assumeutxo | UTXO snapshot. | | -Active chainstate*: the chainstate | containing the current most-work chain. | Consulted by most parts of the system | (net_processing, wallet) as a reflection | of the current chain and UTXO set. | | This may either be an IBD chainstate | or a snapshot chainstate. | | -Background IBD chainstate*: an IBD | chainstate for which the | | IBD process is happening in the background | while use of the active (snapshot) chainstate | allows the rest of the system to function. |