aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorPieter Wuille <pieter@wuille.net>2022-08-31 18:44:38 -0400
committerPieter Wuille <pieter@wuille.net>2023-09-28 12:11:30 -0400
commit3d420d8f28f2d351abf8b0afe90848110e15d50c (patch)
tree4dfafb110b6dcb6d1f63f3f942e52dc90e658065 /doc
parent53d7d35b5899685cd1577156250068e0cab502f4 (diff)
Add instructions for headerssync-params.py to release-process.md
Diffstat (limited to 'doc')
-rw-r--r--doc/release-process.md8
1 files changed, 8 insertions, 0 deletions
diff --git a/doc/release-process.md b/doc/release-process.md
index bdef57243b..468efeb7e1 100644
--- a/doc/release-process.md
+++ b/doc/release-process.md
@@ -43,6 +43,14 @@ Release Process
- On mainnet, the selected value must not be orphaned, so it may be useful to set the height two blocks back from the tip.
- Testnet should be set with a height some tens of thousands back from the tip, due to reorgs there.
- `nMinimumChainWork` with the "chainwork" value of RPC `getblockheader` using the same height as that selected for the previous step.
+* Consider updating the headers synchronization tuning parameters to account for the chainparams updates.
+ The optimal values change very slowly, so this isn't strictly necessary every release, but doing so doesn't hurt.
+ - Update configuration variables in [`contrib/devtools/headerssync-params.py`](contrib/devtools/headerssync-params.py):
+ - Set `TIME` to the software's expected supported lifetime -- after this time, its ability to defend against a high bandwidth timewarp attacker will begin to degrade.
+ - Set `MINCHAINWORK_HEADERS` to the height used for the `nMinimumChainWork` calculation above.
+ - Check that the other variables still look reasonable.
+ - Run the script. It works fine in CPython, but PyPy is much faster (seconds instead of minutes): `pypy3 contrib/devtools/headerssync-params.py`.
+ - Paste the output defining `HEADER_COMMITMENT_PERIOD` and `REDOWNLOAD_BUFFER_SIZE` into the top of [`src/headerssync.cpp`](/src/headerssync.cpp).
- Clear the release notes and move them to the wiki (see "Write the release notes" below).
- Translations on Transifex:
- Pull translations from Transifex into the master branch.