![]() |
Bitcoin Core
24.1.0
P2P Digital Currency
|
#include <attributes.h>#include <chain.h>#include <fs.h>#include <protocol.h>#include <sync.h>#include <txdb.h>#include <atomic>#include <cstdint>#include <unordered_map>#include <vector>Go to the source code of this file.
Classes | |
| struct | node::CBlockIndexWorkComparator |
| struct | node::CBlockIndexHeightOnlyComparator |
| struct | node::PruneLockInfo |
| class | node::BlockManager |
Maintains a tree of blocks (stored in m_block_index) which is consulted to determine where the most-work tip is. More... | |
Namespaces | |
| Consensus | |
| Transaction validation functions. | |
| node | |
Typedefs | |
| using | node::BlockMap = std::unordered_map< uint256, CBlockIndex, BlockHasher > |
Functions | |
| void | node::CleanupBlockRevFiles () |
| FILE * | node::OpenBlockFile (const FlatFilePos &pos, bool fReadOnly=false) |
| Open a block file (blk?????.dat) More... | |
| fs::path | node::GetBlockPosFilename (const FlatFilePos &pos) |
| Translation to a filesystem path. More... | |
| void | node::UnlinkPrunedFiles (const std::set< int > &setFilesToPrune) |
| Actually unlink the specified files. More... | |
| bool | node::ReadBlockFromDisk (CBlock &block, const FlatFilePos &pos, const Consensus::Params &consensusParams) |
| Functions for disk access for blocks. More... | |
| bool | node::ReadBlockFromDisk (CBlock &block, const CBlockIndex *pindex, const Consensus::Params &consensusParams) |
| bool | node::ReadRawBlockFromDisk (std::vector< uint8_t > &block, const FlatFilePos &pos, const CMessageHeader::MessageStartChars &message_start) |
| bool | node::UndoReadFromDisk (CBlockUndo &blockundo, const CBlockIndex *pindex) |
| void | node::ThreadImport (ChainstateManager &chainman, std::vector< fs::path > vImportFiles, const ArgsManager &args, const fs::path &mempool_path) |
Variables | |
| RecursiveMutex | cs_main |
| Mutex to guard access to validation specific variables, such as reading or changing the chainstate. More... | |
| static constexpr bool | node::DEFAULT_STOPAFTERBLOCKIMPORT {false} |
| static const unsigned int | node::BLOCKFILE_CHUNK_SIZE = 0x1000000 |
| The pre-allocation chunk size for blk?????.dat files (since 0.8) More... | |
| static const unsigned int | node::UNDOFILE_CHUNK_SIZE = 0x100000 |
| The pre-allocation chunk size for rev?????.dat files (since 0.8) More... | |
| static const unsigned int | node::MAX_BLOCKFILE_SIZE = 0x8000000 |
| The maximum size of a blk?????.dat file (since 0.8) More... | |
| std::atomic_bool | node::fImporting |
| std::atomic_bool | node::fReindex |
| RecursiveMutex cs_main |
Mutex to guard access to validation specific variables, such as reading or changing the chainstate.
This may also need to be locked when updating the transaction pool, e.g. on AcceptToMemoryPool. See CTxMemPool::cs comment for details.
The transaction pool has a separate lock to allow reading from it and the chainstate at the same time.
Definition at line 121 of file validation.cpp.
1.8.14