Even more details about checkpoints
This commit is contained in:
@@ -68,12 +68,18 @@ Install deps on Linux:
|
||||
- PROTIP: Man page creation must be done after updating the version number and recompiling and before Debian package creation
|
||||
- Update checkpoints in src/chainparams.cpp via util/checkpoints.pl
|
||||
- hushd must be running to run this script, since it uses hush-cli to get the data
|
||||
- Run `./util/checkpoints.pl &> checkpoints.txt` to generate the latets checkpoint data
|
||||
- Look for line which says "END HUSH mainnet checkpoint data" near line 560 in chainparams.cpp , that is where checkpoint data ends
|
||||
- Find the highest block height of data, let's call it HEIGHT
|
||||
- Run `./util/checkpoints.pl 1000 HEIGHT &> checkpoints.txt` to generate the latest checkpoint data
|
||||
- To copy the new data from checkpoints.txt into the file, one way in Vim is to type ":r checkpoints.txt" which will read in a file and paste it as the current cursor
|
||||
- You will see 3 lines of "stats" at the end of the output, you just pasted in the newest stats. Delete the old stats that should be the 3 lines under the current stats
|
||||
- The script generates a comment "Generated at ...", that should be moved to the very beginning of the checkpoint data
|
||||
- Make sure the new code compiles, commit and push
|
||||
- Run `./util/checkpoints.pl help` to see some basic help
|
||||
- By default it will generate checkpoints for every 1000 blocks, the "stride"
|
||||
- You can get a different "stride" by passing it in as the first arg to the script
|
||||
- To get checkpoint data for every 5000 blocks: `./util/checkpoints.pl 5000 &> checkpoints.txt`
|
||||
- Currently checkpoints from before block 340k are given for every 5k blocks to keep the data smaller
|
||||
- Look for line which says "HUSH mainnet checkpoint data" near line 560 in chainparams.cpp , that is where checkpoint data begins.
|
||||
- checkpoints.pl will just generate the data you need, it must be manually copied into the correct place
|
||||
- Checkpoints are a list of block heights and block hashes that tell a full node the correct block history of the blockchain
|
||||
- Checkpoints make block verification a bit faster, because nodes can say "is this block a descendant of a checkpoint block?" instead of doing full consensus checks, which take more time
|
||||
|
||||
Reference in New Issue
Block a user