mirror of
https://gitlab.com/pulsechaincom/erigon-pulse.git
synced 2024-12-22 19:50:36 +00:00
23 lines
1.4 KiB
Markdown
23 lines
1.4 KiB
Markdown
|
# How to prepare turbo-geth release (things not to forget)
|
||
|
|
||
|
## Update Jump dest optimisation code
|
||
|
This step does not have to be completed during emergency updates, because failure to complete it has only a minor impact on the
|
||
|
performance of the initial chain sync.
|
||
|
|
||
|
In the source code `core/skip_analysis.go`, there is a constant `MainnetNotCheckedFrom` which should be equal to the block number,
|
||
|
until which we have manually checked the usefulness of the Jump dest code bitmap. In order to update this, one needs to run these
|
||
|
commands:
|
||
|
````
|
||
|
make state
|
||
|
./build/bin/state checkChangeSets --chaindata <path to chaindata> --block <value of MainnetNotCheckedFrom>
|
||
|
````
|
||
|
If there are any transactions where code bitmap was useful, warning messages like this will be displayed:
|
||
|
````
|
||
|
WARN [08-01|14:54:27.778] Code Bitmap used for detecting invalid jump tx=0x86e55d1818b5355424975de9633a57c40789ca08552297b726333a9433949c92 block number=6426298
|
||
|
````
|
||
|
In such cases (unless there are too many instances), all block numbers need to be excluded in the `SkipAnalysis` function, and comment to it. The constant `MainnetNotCheckedFrom` needs to be update to the first block number we have not checked. The value can be taken from the output of the `checkChangeSets`
|
||
|
utility before it exits, like this:
|
||
|
````
|
||
|
INFO [08-01|15:36:04.282] Checked blocks=10573804 next time specify --block=10573804 duration=36m54.789025062s
|
||
|
````
|