16 Commits
Author SHA1 Message Date
Ryan Ofsky 840bd2ef23 refactor: Pass chainstate parameters to MaybeCompleteSnapshotValidation
Remove hardcoded references to m_ibd_chainstate and m_snapshot_chainstate so
MaybeCompleteSnapshotValidation function can be simpler and focus on validating
the snapshot without dealing with internal ChainstateManager states.

This is a step towards being able to validate the snapshot outside of
ActivateBestChain loop so cs_main is not locked for minutes when the snapshot
block is connected.
2025-12-12 06:49:59 -04:00
Ryan Ofsky 9fe927b6d6 refactor: Add Chainstate m_assumeutxo and m_target_utxohash members
Get rid of m_disabled/IsUsable members. Instead of marking chains disabled for
different reasons, store chainstate assumeutxo status explicitly and use that
information to determine how chains should be treated.
2025-12-12 06:49:59 -04:00
Fabian Jahr e868a6e070 doc: Improve assumeutxo guide and add more docs/comments
Also fixes some outdated information in the remaining design doc.
2024-09-01 21:07:21 +02:00
Fabian Jahr b29c21fc92 assumeutxo: Remove devtools/utxo_snapshot.sh 2024-09-01 20:56:39 +02:00
Ben Westgate 416b9d9427 correct '-dbcache' to '-prune' 2024-03-25 01:39:22 -05:00
Ryan Ofsky 9d9a7458a2 assumeutxo: Remove BLOCK_ASSUMED_VALID flag
Flag adds complexity and is not currently used for anything.
2024-03-18 11:28:40 -05:00
jrakibi efb70cd645 doc: correct function name in AssumeUTXO design docs 2024-02-29 20:50:50 +01:00
Sjors Provoost 03f82087f6 doc: assumeutxo prune and index notes 2023-10-11 09:20:48 +02:00
Fabian Jahr 710e5db61b doc: Drop references to assumevalid in assumeutxo docs 2023-10-06 19:43:32 +02:00
James O'BeirneandSebastian Falbesoner ce585a9a15 rpc: add loadtxoutset
Co-authored-by: Sebastian Falbesoner <sebastian.falbesoner@gmail.com>
2023-09-30 06:41:23 -04:00
Ryan Ofsky 0ce805b632 Documentation improvements for assumeutxo 2023-07-24 16:23:38 -04:00
James O'Beirne 2b373fe49d docs: update assumeutxo.md
Include notes about the `chainstate_snapshot` rename as well as
updates for the included code.
2023-03-07 16:06:20 -05:00
James O'Beirne c29f26b47b validation: add CChainState::m_disabled and ChainMan::isUsable
and remove m_snapshot_validated. This state can now be inferred by the
number of isUsable chainstates.

m_disabled is used to signal that a chainstate should no longer be used
by validation logic; it is used as a sentinel when background validation
completes or if the snapshot chainstate is found to be invalid.

isUsable is a convenience method that incorporates m_disabled.
2023-02-22 12:13:11 -05:00
James O'Beirne bf95976061 doc: add note about snapshot chainstate init 2022-09-13 13:31:37 -04:00
James O'BeirneandMacroFake 00eeb31c76 scripted-diff: rename CChainState -> Chainstate
-BEGIN VERIFY SCRIPT-
sed -i 's/CChainState/Chainstate/g' $(git grep -l CChainState ':(exclude)doc/release-notes*')
-END VERIFY SCRIPT-

Co-authored-by: MacroFake <falke.marco@gmail.com>
2022-09-09 11:47:27 -04:00
Ryan Ofsky dc1e7ad7a5 Add doc/design/libraries.md 2022-02-15 09:29:53 -05:00