Page MenuHomePhabricator

validation: pruning for multiple chainstates
Needs ReviewPublic

Authored by PiRK on Fri, Apr 4, 13:24.

Details

Reviewers
None
Group Reviewers
Restricted Project
Summary

Introduces ChainstateManager::GetPruneRange().

The prune budget is split evenly between the number of chainstates,
however the prune budget may be exceeded if the resulting shares are
beneath MIN_DISK_SPACE_FOR_BLOCK_FILES.

This is a partial backport of core#27596
https://github.com/bitcoin/bitcoin/pull/27596/commits/1019c399825b0d512c1fd751c376d46fed4992b9

Depends on D17894

The release note will be added together with the release note for loadtxoutset, to guarantee that both notes will be associated with the same release.

Test Plan

ninja all check-all

Run an IBD with assumeutxo and pruning enabled.