You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Merge bitcoin#24424: doc: release process chainparams updates
74743ad Clarify in release process how to update defaultAssumeValid/nMinimumChainWork (Jon Atack)
415345d Release process: use 4096 blocks and getbestblockhash for getchaintxstats (Jon Atack)
fe048f7 Specify in release process which chains need to be updated (Jon Atack)
5841476 Reorganize release process chainparams section to reduce repetition (Jon Atack)
e8f8448 Clarify release process overhead note to be more actionable (Jon Atack)
e538ead Release process: exclude huge files for mainnet m_assumed_blockchain_size (laanwj)
b4d2d74 Release process: specify blockchain/chain_state units, reduce repetition (Jon Atack)
318655c Add missing references to signet in the release process (Jon Atack)
Pull request description:
Release process updates, fixes and clarifications regarding updating the chainparams:
- add missing references to signet
- specify specify blockchain/chainstate units, reduce repetition
- exclude huge files for m_assumed_blockchain_size on mainnet
- rewrite overhead note to be more actionable
- reorganize the chainparams section to reduce repetition
- specify which chains need to be updated
- use 4096 blocks and getbestblockhash for getchaintxstats
- clarify how to update defaultAssumeValid and nMinimumChainWork
ACKs for top commit:
laanwj:
ACK 74743ad
brunoerg:
re-ACK 74743ad
Tree-SHA512: 7fc092be739f63c5d8404add2dcbcd0c570b680ff0ab36a9b5a774b2e930717beebaa6c867ab6db6795b3c234d9016ab1ae905a78d6ea6610140a59930c43029
Copy file name to clipboardExpand all lines: doc/release-process.md
+23-16Lines changed: 23 additions & 16 deletions
Original file line number
Diff line number
Diff line change
@@ -29,14 +29,20 @@ Release Process
29
29
#### Before branch-off
30
30
31
31
* Update hardcoded [seeds](/contrib/seeds/README.md), see [this pull request](https://github.com/bitcoin/bitcoin/pull/7415) for an example.
32
-
* 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-assumed-blockchain-and-chain-state-size) for information on how to calculate them).
33
-
* Update [`src/chainparams.cpp`](/src/chainparams.cpp) chainTxData with statistics about the transaction count and rate. Use the output of the `getchaintxstats` RPC, see
34
-
[this pull request](https://github.com/bitcoin/bitcoin/pull/20263) for an example. Reviewers can verify the results by running `getchaintxstats <window_block_count> <window_final_block_hash>` with the `window_block_count` and `window_final_block_hash` from your output.
35
-
* Update `src/chainparams.cpp` nMinimumChainWork and defaultAssumeValid (and the block height comment) with information from the `getblockheader` (and `getblockhash`) RPCs.
36
-
- The selected value must not be orphaned so it may be useful to set the value two blocks back from the tip.
37
-
- Testnet should be set some tens of thousands back from the tip due to reorgs there.
38
-
- This update should be reviewed with a reindex-chainstate with assumevalid=0 to catch any defect
39
-
that causes rejection of blocks in the past history.
32
+
* Update the following variables in [`src/chainparams.cpp`](/src/chainparams.cpp) for mainnet, testnet, and signet:
33
+
-`m_assumed_blockchain_size` and `m_assumed_chain_state_size` with the current size plus some overhead (see
34
+
[this](#how-to-calculate-assumed-blockchain-and-chain-state-size) for information on how to calculate them).
35
+
- The following updates should be reviewed with `reindex-chainstate` and `assumevalid=0` to catch any defect
36
+
that causes rejection of blocks in the past history.
37
+
-`chainTxData` with statistics about the transaction count and rate. Use the output of the `getchaintxstats` RPC with an
38
+
`nBlocks` of 4096 (28 days) and a `bestblockhash` of RPC `getbestblockhash`; see
39
+
[this pull request](https://github.com/bitcoin/bitcoin/pull/20263) for an example. Reviewers can verify the results by running
40
+
`getchaintxstats <window_block_count> <window_final_block_hash>` with the `window_block_count` and `window_final_block_hash` from your output.
41
+
-`defaultAssumeValid` with the output of RPC `getblockhash` using the `height` of `window_final_block_height` above
42
+
(and update the block height comment with that height), taking into account the following:
43
+
- On mainnet, the selected value must not be orphaned, so it may be useful to set the height two blocks back from the tip.
44
+
- Testnet should be set with a height some tens of thousands back from the tip, due to reorgs there.
45
+
-`nMinimumChainWork` with the "chainwork" value of RPC `getblockheader` using the same height as that selected for the previous step.
40
46
- Clear the release notes and move them to the wiki (see "Write the release notes" below).
41
47
- Translations on Transifex:
42
48
- Pull translations from Transifex into the master branch.
Both variables are used as a guideline forhow much space the user needs on their drivein total, not just strictly for the blockchain.
304
310
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.
305
311
306
-
To calculate `m_assumed_blockchain_size`:
307
-
- For `mainnet` -> Take the size of the data directory, excluding `/regtest` and `/testnet3` directories.
308
-
- For `testnet` -> Take the size of the `/testnet3` directory.
312
+
To calculate `m_assumed_blockchain_size`, take the size in GiB of these directories:
313
+
- For `mainnet` -> the data directory, excluding the `/testnet3`, `/signet`, and `/regtest` directories and any overly large files, e.g. a huge `debug.log`
314
+
- For `testnet` ->`/testnet3`
315
+
- For `signet` ->`/signet`
309
316
310
-
311
-
To calculate `m_assumed_chain_state_size`:
312
-
- For `mainnet` ->Take the size of the `/chainstate` directory.
313
-
- For `testnet` ->Take the size of the `/testnet3/chainstate` directory.
317
+
To calculate `m_assumed_chain_state_size`, take the size in GiB of these directories:
318
+
- For `mainnet` ->`/chainstate`
319
+
- For `testnet` ->`/testnet3/chainstate`
320
+
- For `signet` ->`/signet/chainstate`
314
321
315
322
Notes:
316
323
- 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.
317
-
- 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.
324
+
- The expected overhead forgrowth may change over time. Consider whether the percentage needs to be changedin response;if so, update it here in this section.
0 commit comments