Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
PoW HardFork #2866
Grin's first mainnet hardfork!
From well before launch, Grin planned to hardfork every 6 month during the first 2 years.
The PoW tweak was introduced in the Grin Forum post at https://www.grin-forum.org/t/mid-july-pow-hardfork-cuckaroo29-cuckarood29.
The crucial change in this PR is in function global::create_pow_context:
in combination with a change in consensus::valid_header_version
with all other changes just putting up the necessary scaffolding to make this work.
If all goes well, then the first block with header version 2, at height WEEK_HEIGHT * 52/2 =
Any nodes that fail to upgrade will not be able to advance to height 262080, as the current consensus::valid_header_version will simply return false. So there cannot actually be any chain split.
The major work left to be done is in grin-miner. We may initially only offer a CUDA miner there as the CPU mean miner is an exceedingly complex beast.
NOTE that while the PoW hardfork happens 32 days earlier on Floonet, at height 216000, it will still have version 1 headers. To make Floonet have version 2 headers at 216000 would require making consensus::valid_header_version dependent on CHAIN_TYPE...
referenced this pull request
Jun 5, 2019
It would seem these tests are hanging in the current commit:
Odd... I ran CI again and it passed this time, but on a second local run I get a different set of tests hanging. Something definitely inconsistent here: