From 3756853b15902d63f4b5a3129e8b5d82e84e125b Mon Sep 17 00:00:00 2001 From: Carl Dong Date: Mon, 14 Sep 2020 10:19:12 -0400 Subject: docs: Move FindFilesToPrune{,Manual} doxygen comment [META] This is a pure comment commit. They belong in the member declarations in the header file. --- src/validation.h | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'src/validation.h') diff --git a/src/validation.h b/src/validation.h index 94bf16968a..9114b24c94 100644 --- a/src/validation.h +++ b/src/validation.h @@ -361,8 +361,24 @@ class BlockManager friend CChainState; private: - // See definition for documentation + /* Calculate the block/rev files to delete based on height specified by user with RPC command pruneblockchain */ void FindFilesToPruneManual(std::set& setFilesToPrune, int nManualPruneHeight, int chain_tip_height); + + /** + * Prune block and undo files (blk???.dat and undo???.dat) so that the disk space used is less than a user-defined target. + * The user sets the target (in MB) on the command line or in config file. This will be run on startup and whenever new + * space is allocated in a block or undo file, staying below the target. Changing back to unpruned requires a reindex + * (which in this case means the blockchain must be re-downloaded.) + * + * Pruning functions are called from FlushStateToDisk when the global fCheckForPruning flag has been set. + * Block and undo files are deleted in lock-step (when blk00003.dat is deleted, so is rev00003.dat.) + * Pruning cannot take place until the longest chain is at least a certain length (100000 on mainnet, 1000 on testnet, 1000 on regtest). + * Pruning will never delete a block within a defined distance (currently 288) from the active chain's tip. + * The block index is updated by unsetting HAVE_DATA and HAVE_UNDO for any blocks that were stored in the deleted files. + * A db flag records the fact that at least some block files have been pruned. + * + * @param[out] setFilesToPrune The set of file indices that can be unlinked will be returned + */ void FindFilesToPrune(std::set& setFilesToPrune, uint64_t nPruneAfterHeight, int chain_tip_height, bool is_ibd); public: -- cgit v1.2.3