Skip to content

Commit 981ec9b

Browse files
committed
Merge #15459: doc: add how to calculate blockchain and chainstate size variables to release process
eb4c43e doc: documents how to calculate m_assumed_blockchain_size and m_assumed_chain_state_size on the release process. (marcoagner) Pull request description: Regarding [this](bitcoin/bitcoin#15183 (comment)) on bitcoin/bitcoin#15183. Added an "Additional information" section for this which seems reasonable to me but may not be the best place for this. Also, let me know if anything else should be documented here (like more details). ACKs for top commit: laanwj: ACK eb4c43e Tree-SHA512: 7e6fc46740daa01dd9be5a8da7846e7a9f7fa866bf31fdc2cb252f90c698cfd6ef954f9588f7abcebda2355ec2b2a380635e14a164e53e77d38abefa3e2cc698
2 parents 79aeed8 + eb4c43e commit 981ec9b

File tree

1 file changed

+21
-1
lines changed

1 file changed

+21
-1
lines changed

doc/release-process.md

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Release Process
2424
### Before every major release
2525

2626
* Update hardcoded [seeds](/contrib/seeds/README.md), see [this pull request](https://github.com/bitcoin/bitcoin/pull/7415) for an example.
27-
* Update [`src/chainparams.cpp`](/src/chainparams.cpp) m_assumed_blockchain_size and m_assumed_chain_state_size with the current size plus some overhead.
27+
* Update [`src/chainparams.cpp`](/src/chainparams.cpp) m_assumed_blockchain_size and m_assumed_chain_state_size with the current size plus some overhead (see [this](#how-to-calculate-m_assumed_blockchain_size-and-m_assumed_chain_state_size) for information on how to calculate them).
2828
* Update `src/chainparams.cpp` chainTxData with statistics about the transaction count and rate. Use the output of the RPC `getchaintxstats`, see
2929
[this pull request](https://github.com/bitcoin/bitcoin/pull/12270) for an example. Reviewers can verify the results by running `getchaintxstats <window_block_count> <window_last_block_hash>` with the `window_block_count` and `window_last_block_hash` from your output.
3030
* On both the master branch and the new release branch:
@@ -369,3 +369,23 @@ bitcoin.org (see below for bitcoin.org update instructions).
369369
- Optionally twitter, reddit /r/Bitcoin, ... but this will usually sort out itself
370370

371371
- Celebrate
372+
373+
### Additional information
374+
375+
#### How to calculate `m_assumed_blockchain_size` and `m_assumed_chain_state_size`
376+
377+
Both variables are used as a guideline for how much space the user needs on their drive in total, not just strictly for the blockchain.
378+
Note that all values should be taken from a **fully synced** node and have an overhead of 5-10% added on top of its base value.
379+
380+
To calculate `m_assumed_blockchain_size`:
381+
- For `mainnet` -> Take the size of the Bitcoin data directory, excluding `/regtest` and `/testnet3` directories.
382+
- For `testnet` -> Take the size of the `/testnet3` directory.
383+
384+
385+
To calculate `m_assumed_chain_state_size`:
386+
- For `mainnet` -> Take the size of the `/chainstate` directory.
387+
- For `testnet` -> Take the size of the `/testnet3/chainstate` directory.
388+
389+
Notes:
390+
- When taking the size for `m_assumed_blockchain_size`, there's no need to exclude the `/chainstate` directory since it's a guideline value and an overhead will be added anyway.
391+
- The expected overhead for growth may change over time, so it may not be the same value as last release; pay attention to that when changing the variables.

0 commit comments

Comments
 (0)