Also adds assumeutxo params for mainnet at 910'000 & testnet4 & 90'000.
kernel: chainparams & headersync updates for 30.0 #33274
pull fanquake wants to merge 6 commits into bitcoin:master from fanquake:chainparams_30 changing 3 files +46 −35-
fanquake commented at 1:31 PM on September 1, 2025: member
- fanquake added this to the milestone 30.0 on Sep 1, 2025
- DrahtBot added the label Validation on Sep 1, 2025
-
DrahtBot commented at 1:31 PM on September 1, 2025: contributor
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--006a51241073e994b41acfe9ec718e94-->
Code Coverage & Benchmarks
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/33274.
<!--021abf342d371248e50ceaed478a90ca-->
Reviews
See the guideline for information on the review process.
Type Reviewers ACK Sjors, w0xlt, achow101, hodlinator If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.
<!--174a7506f384e20aa4161008e828411d-->
Conflicts
Reviewers, this pull request conflicts with the following ones:
- #32579 (headerssync: Preempt unrealistic unit test behavior by hodlinator)
- #32427 ((RFC) kernel: Replace leveldb-based BlockTreeDB with flat-file based store by TheCharlatan)
- #31974 (Drop testnet3 by Sjors)
- #26201 (Remove Taproot activation height by Sjors)
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.
<!--5faf32d7da4f0f540f40219e4f7537a3-->
-
in src/kernel/chainparams.cpp:185 in 2cc7d58560 outdated
179 | @@ -180,6 +180,12 @@ class CMainParams : public CChainParams { 180 | .hash_serialized = AssumeutxoHash{uint256{"dbd190983eaf433ef7c15f78a278ae42c00ef52e0fd2a54953782175fbadcea9"}}, 181 | .m_chain_tx_count = 1145604538, 182 | .blockhash = consteval_ctor(uint256{"000000000000000000010b17283c3c400507969a9c2afd1dcf2082ec5cca2880"}), 183 | + }, 184 | + { 185 | + .height = 910'000,
Sjors commented at 2:17 PM on September 1, 2025:2cc7d585600e8f0760f877fecf4e7eaf9c5dc92b: here's a torrent magnet, with the same seeds as Bitcoin Core v29, except the binary seed:
magnet:?xt=urn:btih:7019437a2b1530624b100c0795cfc5f90b8322ca&dn=utxo-910000.dat&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Ftracker.bitcoin.sprovoost.nl%3A6969It might be an hour or so before you can download it.
Reminder to other testers that loading the snapshot is much faster if you disable the network temporary, see #29993.
hodlinator commented at 10:01 AM on September 3, 2025:Mainnet assume UTXO block confirmed:
â‚¿ bitcoin-cli getblock 0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821 { "hash": "0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821", "confirmations": 2908, "height": 910000,Downloaded torrent as kindly provided by Sjors.
<details><summary>Loaded assume utxo snapshot, saw some odd behavior with validating 2 times and only removing the second chainstate directory after restarting. But snapshot worked.</summary>
- Removed blocks/ & chainstate/
- Re-synced headers before stopping node again
- Started node with
-noconnect bitcoin-cli -rpcclienttimeout=0 loadtxoutset ~/Downloads/utxo-910000.dat
â‚¿ bitcoin-cli getchainstates { "headers": 912911, "chainstates": [ { "blocks": 2123, "bestblockhash": "00000000a3099f5f4100c759a09d3ba7001e9075d7997c4e0e76308209dfece8", "bits": "1d00ffff", "target": "00000000ffff0000000000000000000000000000000000000000000000000000", "difficulty": 1, "verificationprogress": 1.742815384638761e-06, "coins_db_cache_bytes": 419430, "coins_tip_cache_bytes": 523763712, "validated": true }, { "blocks": 910000, "bestblockhash": "0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821", "bits": "17022cb3", "target": "000000000000000000022cb30000000000000000000000000000000000000000", "difficulty": 129435235580344.8, "verificationprogress": 0.9924388182672436, "coins_db_cache_bytes": 7969177, "coins_tip_cache_bytes": 9951510528, "snapshot_blockhash": "0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821", "validated": false } ] }- Restarted node without
-noconnect. - Repeated
bitcoin-cli getchainstatesshows slowly increasing blocks from 910'000 upwards, while the other chainstate is stuck at 2'123 blocks. - Once the assume utxo-based chainstate reaches the tip, the other chainstate starts increasing from 2'123 upwards. (New blocks are still added to the assume utxo-based one).
- Left it running over the night but background sync still took a long while.
2025-09-03T09:35:36Z [warning] Flushing large (5 GiB) UTXO set to disk, it may take several minutes 2025-09-03T09:37:04Z [snapshot] computing UTXO stats for background chainstate to validate snapshot - this could take a few minutes 2025-09-03T09:39:15Z [snapshot] snapshot beginning at 0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821 has been fully validated 2025-09-03T09:39:15Z [snapshot] allocating all cache to the snapshot chainstate 2025-09-03T09:39:15Z Opening LevelDB in /home/hodlinator/.bitcoin/chainstate_snapshot 2025-09-03T09:39:15Z Opened LevelDB successfully 2025-09-03T09:39:15Z Using obfuscation key for /home/hodlinator/.bitcoin/chainstate_snapshot: 7d624d1ee9abfe2b 2025-09-03T09:39:15Z [Chainstate [snapshot] @ height 912993 (000000000000000000016a9bb5f319ff1902ff927cfd4910ceff07268f197cf2)] resized coinsdb cache to 8.0 MiB 2025-09-03T09:39:15Z [Chainstate [snapshot] @ height 912993 (000000000000000000016a9bb5f319ff1902ff927cfd4910ceff07268f197cf2)] resized coinstip cache to 9990.0 MiB 2025-09-03T09:39:15Z [snapshot] re-enabling NODE_NETWORK services 2025-09-03T09:39:15Z [snapshot] restarting indexesbitcoin-cli getchainstatesnow only returns one state, but I still have both on disk:
â‚¿ du -hs /home/hodlinator/.bitcoin/chainstate* 20G /home/hodlinator/.bitcoin/chainstate 12G /home/hodlinator/.bitcoin/chainstate_snapshot- Restarting the node resulted in recomputing UTXO stats to validate the snapshot a second time(?!), but at least removed one of the chainstate dirs.
2025-09-03T09:43:38Z Assuming ancestors of block 00000000000000000000611fd22f2df7c8fbd0688745c3a6c3bb5109cc2a12cb have valid signatures. 2025-09-03T09:43:38Z Setting nMinimumChainWork=0000000000000000000000000000000000000000dee8e2a309ad8a9820433c68 2025-09-03T09:43:38Z [snapshot] detected active snapshot chainstate (/home/hodlinator/.bitcoin/chainstate_snapshot) - loading 2025-09-03T09:43:38Z [snapshot] switching active chainstate to Chainstate [snapshot] @ height -1 (null) 2025-09-03T09:43:39Z [snapshot] set m_chain_tx_count=1226586151 for 0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821 2025-09-03T09:43:40Z Loading block index db: last block file = 5121 2025-09-03T09:43:40Z Loading block index db: last block file info: CBlockFileInfo(blocks=64, size=98094618, heights=909602...909998, time=2025-08-11...2025-08-14) 2025-09-03T09:43:40Z Checking all blk files are present... 2025-09-03T09:43:42Z Initializing chainstate Chainstate [ibd] @ height -1 (null) 2025-09-03T09:43:42Z Opening LevelDB in /home/hodlinator/.bitcoin/chainstate 2025-09-03T09:43:43Z Opened LevelDB successfully 2025-09-03T09:43:43Z Using obfuscation key for /home/hodlinator/.bitcoin/chainstate: 85bc6cb8217fc36e 2025-09-03T09:43:43Z Loaded best chain: hashBestChain=0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821 height=910000 date=2025-08-14T09:25:55Z progress=0.992203 2025-09-03T09:43:43Z Initializing chainstate Chainstate [snapshot] @ height -1 (null) 2025-09-03T09:43:43Z Opening LevelDB in /home/hodlinator/.bitcoin/chainstate_snapshot 2025-09-03T09:43:43Z Opened LevelDB successfully 2025-09-03T09:43:43Z Using obfuscation key for /home/hodlinator/.bitcoin/chainstate_snapshot: 7d624d1ee9abfe2b 2025-09-03T09:43:43Z Loaded best chain: hashBestChain=000000000000000000016a9bb5f319ff1902ff927cfd4910ceff07268f197cf2 height=912993 date=2025-09-03T09:16:53Z progress=1.000000 2025-09-03T09:43:43Z Leaving InitialBlockDownload (latching to false) 2025-09-03T09:43:43Z Opening LevelDB in /home/hodlinator/.bitcoin/chainstate_snapshot 2025-09-03T09:43:43Z Opened LevelDB successfully 2025-09-03T09:43:43Z Using obfuscation key for /home/hodlinator/.bitcoin/chainstate_snapshot: 7d624d1ee9abfe2b 2025-09-03T09:43:43Z [Chainstate [snapshot] @ height 912993 (000000000000000000016a9bb5f319ff1902ff927cfd4910ceff07268f197cf2)] resized coinsdb cache to 0.4 MiB 2025-09-03T09:43:43Z [Chainstate [snapshot] @ height 912993 (000000000000000000016a9bb5f319ff1902ff927cfd4910ceff07268f197cf2)] resized coinstip cache to 499.5 MiB 2025-09-03T09:43:43Z Opening LevelDB in /home/hodlinator/.bitcoin/chainstate 2025-09-03T09:43:43Z Opened LevelDB successfully 2025-09-03T09:43:43Z Using obfuscation key for /home/hodlinator/.bitcoin/chainstate: 85bc6cb8217fc36e 2025-09-03T09:43:43Z [Chainstate [ibd] @ height 910000 (0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821)] resized coinsdb cache to 7.6 MiB 2025-09-03T09:43:43Z [Chainstate [ibd] @ height 910000 (0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821)] resized coinstip cache to 9490.5 MiB 2025-09-03T09:43:43Z [snapshot] computing UTXO stats for background chainstate to validate snapshot - this could take a few minutes 2025-09-03T09:45:32Z [snapshot] snapshot beginning at 0000000000000000000108970acb9522ffd516eae17acddcb1bd16469194a821 has been fully validated 2025-09-03T09:45:32Z [snapshot] allocating all cache to the snapshot chainstate 2025-09-03T09:45:32Z Opening LevelDB in /home/hodlinator/.bitcoin/chainstate_snapshot 2025-09-03T09:45:32Z Opened LevelDB successfully 2025-09-03T09:45:32Z Using obfuscation key for /home/hodlinator/.bitcoin/chainstate_snapshot: 7d624d1ee9abfe2b 2025-09-03T09:45:32Z [Chainstate [snapshot] @ height 912993 (000000000000000000016a9bb5f319ff1902ff927cfd4910ceff07268f197cf2)] resized coinsdb cache to 8.0 MiB 2025-09-03T09:45:32Z [Chainstate [snapshot] @ height 912993 (000000000000000000016a9bb5f319ff1902ff927cfd4910ceff07268f197cf2)] resized coinstip cache to 9990.0 MiB 2025-09-03T09:45:32Z [snapshot] cleaning up unneeded background chainstate, then reinitializing 2025-09-03T09:45:32Z [snapshot] deleting background chainstate directory (now unnecessary) (/home/hodlinator/.bitcoin/chainstate) 2025-09-03T09:45:32Z [snapshot] moving snapshot chainstate (/home/hodlinator/.bitcoin/chainstate_snapshot) to default chainstate directory (/home/hodlinator/.bitcoin/chainstate) 2025-09-03T09:45:32Z Removing leveldb dir at /home/hodlinator/.bitcoin/chainstate_todelete 2025-09-03T09:45:34Z [snapshot] deleted background chainstate directory (/home/hodlinator/.bitcoin/chainstate) 2025-09-03T09:45:37Z Loading block index db: last block file = 5121 2025-09-03T09:45:37Z Loading block index db: last block file info: CBlockFileInfo(blocks=64, size=98094618, heights=909602...909998, time=2025-08-11...2025-08-14) 2025-09-03T09:45:37Z Checking all blk files are present... 2025-09-03T09:45:37Z Initializing chainstate Chainstate [ibd] @ height -1 (null) 2025-09-03T09:45:37Z Opening LevelDB in /home/hodlinator/.bitcoin/chainstate 2025-09-03T09:45:37Z Opened LevelDB successfully 2025-09-03T09:45:37Z Using obfuscation key for /home/hodlinator/.bitcoin/chainstate: 7d624d1ee9abfe2b 2025-09-03T09:45:38Z Loaded best chain: hashBestChain=000000000000000000016a9bb5f319ff1902ff927cfd4910ceff07268f197cf2 height=912993 date=2025-09-03T09:16:53Z progress=1.000000</details>
in src/kernel/chainparams.cpp:383 in 01fbbc5b7e outdated
378 | @@ -379,7 +379,12 @@ class CTestNet4Params : public CChainParams { 379 | m_is_mockable_chain = false; 380 | 381 | m_assumeutxo_data = { 382 | - {} 383 | + { 384 | + .height = 90'000,
Sjors commented at 3:07 PM on September 1, 2025:magnet:?xt=urn:btih:7341b215b570e3bc69f5fbbe5e817b51b0b9b542&dn=utxo-testnet4-90000.dat&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Ftracker.bitcoin.sprovoost.nl%3A6969
hodlinator commented at 9:25 AM on September 3, 2025:Unlike the mainnet one, this one will not download for me. :\
Sjors commented at 10:21 AM on September 3, 2025:Try again, I should have a reachable seed for the next few hours.
hodlinator commented at 11:15 AM on September 3, 2025:Could be a case of the worst selection highlight UI ever. <img width="626" height="255" alt="Screenshot From 2025-09-03 12-50-23" src="https://github.com/user-attachments/assets/9f5e5b6e-5253-4424-9227-0b3c57a0b31e" /> I have the file.
(My client claims the port is open (probably thanks to my router reset), so I'm not intentionally leeching, just low demand).
hodlinator commented at 11:33 AM on September 3, 2025:2025-09-03T11:27:15Z [snapshot] snapshot beginning at 0000000002ebe8bcda020e0dd6ccfbdfac531d2f6a81457191b99fc2df2dbe3b has been fully validatedHad to restart node for the 2nd chainstate to be deleted after doing a 2nd round of validation (same as mainnet #33274 (review)):
2025-09-03T11:28:14Z [snapshot] computing UTXO stats for background chainstate to validate snapshot - this could take a few minutes 2025-09-03T11:28:22Z [snapshot] snapshot beginning at 0000000002ebe8bcda020e0dd6ccfbdfac531d2f6a81457191b99fc2df2dbe3b has been fully validated 2025-09-03T11:28:22Z [snapshot] allocating all cache to the snapshot chainstate 2025-09-03T11:28:22Z Opening LevelDB in /home/hodlinator/.bitcoin/testnet4/chainstate_snapshot 2025-09-03T11:28:22Z Opened LevelDB successfully 2025-09-03T11:28:22Z Using obfuscation key for /home/hodlinator/.bitcoin/testnet4/chainstate_snapshot: d4971b3b981c8ea1 2025-09-03T11:28:22Z [Chainstate [snapshot] @ height 100474 (0000000001fb1795dec277e447d800c813d9a37bf5b796a22e77df9fc067f08f)] resized coinsdb cache to 8.0 MiB 2025-09-03T11:28:22Z [Chainstate [snapshot] @ height 100474 (0000000001fb1795dec277e447d800c813d9a37bf5b796a22e77df9fc067f08f)] resized coinstip cache to 9990.0 MiB 2025-09-03T11:28:22Z [snapshot] cleaning up unneeded background chainstate, then reinitializing 2025-09-03T11:28:22Z [snapshot] deleting background chainstate directory (now unnecessary) (/home/hodlinator/.bitcoin/testnet4/chainstate) 2025-09-03T11:28:22Z [snapshot] moving snapshot chainstate (/home/hodlinator/.bitcoin/testnet4/chainstate_snapshot) to default chainstate directory (/home/hodlinator/.bitcoin/testnet4/chainstate) 2025-09-03T11:28:22Z Removing leveldb dir at /home/hodlinator/.bitcoin/testnet4/chainstate_todelete 2025-09-03T11:28:22Z [snapshot] deleted background chainstate directory (/home/hodlinator/.bitcoin/testnet4/chainstate)in src/kernel/chainparams.cpp:242 in cf7cb09f85 outdated
231 | @@ -232,8 +232,8 @@ class CTestNetParams : public CChainParams { 232 | consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].threshold = 1512; // 75% 233 | consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].period = 2016; 234 | 235 | - consensus.nMinimumChainWork = uint256{"0000000000000000000000000000000000000000000015f5e0c9f13455b0eb17"}; 236 | - consensus.defaultAssumeValid = uint256{"00000000000003fc7967410ba2d0a8a8d50daedc318d43e8baf1a9782c236a57"}; // 3974606 237 | + consensus.nMinimumChainWork = uint256{"0000000000000000000000000000000000000000000016dd270dd94fac1d7632"}; 238 | + consensus.defaultAssumeValid = uint256{"0000000000000065c6c38258e201971a3fdfcc2ceee0dd6e85a6c022d45dee34"}; // 4550000
Sjors commented at 5:18 PM on September 1, 2025: memberACK 01fbbc5b7ea02c98f54255b8dba342a065edb9f7
I didn't check the datadir sizes.
I tested loading the testnet4 snapshot and then syncing to the tip. Still syncing a mainnet node with
-assumevalid=0(also using a loaded snapshot), will update here in the unlikely event that it fails.in src/kernel/chainparams.cpp:244 in daf3ff6872 outdated
240 | @@ -241,7 +241,7 @@ class CTestNetParams : public CChainParams { 241 | pchMessageStart[3] = 0x07; 242 | nDefaultPort = 18333; 243 | nPruneAfterHeight = 1000; 244 | - m_assumed_blockchain_size = 200; 245 | + m_assumed_blockchain_size = 215;
achow101 commented at 10:06 PM on September 1, 2025:Seems low, would expect 244.
$ du -csh --apparent-size testnet3/chainstate/ testnet3/blocks/ 16G testnet3/chainstate/ 205G testnet3/blocks/ 221G total
Sjors commented at 6:49 AM on September 2, 2025:For a node that's been offline for a year or so and then caught up yesterday:
16G testnet3/chainstate/ 195G testnet3/blocks/ 210G total
fanquake commented at 10:58 AM on September 2, 2025:du -csh testnet3/chainstate/ testnet3/blocks/ 16G testnet3/chainstate/ 194G testnet3/blocks/ 210G totalCan increase to 240.
in src/kernel/chainparams.cpp:340 in daf3ff6872 outdated
337 | @@ -338,7 +338,7 @@ class CTestNet4Params : public CChainParams { 338 | nDefaultPort = 48333; 339 | nPruneAfterHeight = 1000; 340 | m_assumed_blockchain_size = 11;
achow101 commented at 10:07 PM on September 1, 2025:I think testnet4 blockchain size is bigger
du -csh --apparent-size testnet4/chainstate/ testnet4/blocks/ 928M testnet4/chainstate/ 20G testnet4/blocks/ 20G total
Sjors commented at 6:50 AM on September 2, 2025:Testnet4 node that's been online a couple of times, but not continuously:
938M testnet4/chainstate/ 8,1G testnet4/blocks/ 9,0G total
Sjors commented at 6:51 AM on September 2, 2025:And one that I spun up in June and his been online since:
915M testnet4/chainstate/ 20G testnet4/blocks/ 21G totalThe difference probably comes from the vast number of stale blocks.
fanquake commented at 10:54 AM on September 2, 2025:I think testnet4 blockchain size is bigger
Not here:
du -csh testnet4/chainstate/ testnet4/blocks/ 945M testnet4/chainstate/ 8.0G testnet4/blocks/ 8.9G totalWill increase to 22 in any case.
in src/kernel/chainparams.cpp:407 in daf3ff6872 outdated
403 | @@ -404,8 +404,8 @@ class SigNetParams : public CChainParams { 404 | 405 | consensus.nMinimumChainWork = uint256{"000000000000000000000000000000000000000000000000000002b517f3d1a1"}; 406 | consensus.defaultAssumeValid = uint256{"000000895a110f46e59eb82bbc5bfb67fa314656009c295509c21b4999f5180a"}; // 237722 407 | - m_assumed_blockchain_size = 9; 408 | - m_assumed_chain_state_size = 1; 409 | + m_assumed_blockchain_size = 17;
achow101 commented at 10:09 PM on September 1, 2025:Seems low, would expect 20.
du -csh --apparent-size signet/chainstate/ signet/blocks/ 2.8G signet/chainstate/ 15G signet/blocks/ 18G total
Sjors commented at 7:16 AM on September 2, 2025:Intermittently online node (though that shouldn't make a difference on this signet):
2,8G signet/chainstate/ 15G signet/blocks/ 18G total
fanquake commented at 10:54 AM on September 2, 2025:Bumped to 20.
kernel: update assumed blockchain & chainstate sizes b4adae76d4kernel: update assumevalid and minimumChainWork c3cb26e028kernel: update chainTxData 66fb962426kernel: update headersync params 943de66b50kernel: add mainnet assumeutxo param at height 910'000 a6512686e3kernel: add testnet4 assumeutxo param at height 90'000 755152ac81fanquake force-pushed on Sep 2, 2025Sjors commented at 11:58 AM on September 2, 2025: memberre-ACK 755152ac819a23acf2f9e70316134d74a04d589b
w0xlt commented at 4:59 PM on September 2, 2025: contributorachow101 commented at 5:32 PM on September 2, 2025: memberACK 755152ac819a23acf2f9e70316134d74a04d589b
in src/kernel/chainparams.cpp:135 in b4adae76d4 outdated
131 | @@ -132,7 +132,7 @@ class CMainParams : public CChainParams { 132 | pchMessageStart[3] = 0xd9; 133 | nDefaultPort = 8333; 134 | nPruneAfterHeight = 100000; 135 | - m_assumed_blockchain_size = 720; 136 | + m_assumed_blockchain_size = 810;
hodlinator commented at 9:58 AM on September 3, 2025:My ~/.bitcoin/ dir was 736G after removing other chains. Seldom online with that node, so will not have many stale blocks, but it's in a similar ballpark. Same for chainstate which was 11G.
Increases in other chains seem reasonable.
in src/kernel/chainparams.cpp:122 in c3cb26e028 outdated
117 | @@ -118,8 +118,8 @@ class CMainParams : public CChainParams { 118 | consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].threshold = 1815; // 90% 119 | consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].period = 2016; 120 | 121 | - consensus.nMinimumChainWork = uint256{"0000000000000000000000000000000000000000b1f3b93b65b16d035a82be84"}; 122 | - consensus.defaultAssumeValid = uint256{"00000000000000000001b658dd1120e82e66d2790811f89ede9742ada3ed6d77"}; // 886157 123 | + consensus.nMinimumChainWork = uint256{"0000000000000000000000000000000000000000dee8e2a309ad8a9820433c68"}; 124 | + consensus.defaultAssumeValid = uint256{"00000000000000000000611fd22f2df7c8fbd0688745c3a6c3bb5109cc2a12cb"}; // 912683
hodlinator commented at 9:59 AM on September 3, 2025:Mainnet assume valid block checks out:
â‚¿ bitcoin-cli getblock 00000000000000000000611fd22f2df7c8fbd0688745c3a6c3bb5109cc2a12cb { "hash": "00000000000000000000611fd22f2df7c8fbd0688745c3a6c3bb5109cc2a12cb", "confirmations": 181, "height": 912683, ... "chainwork": "0000000000000000000000000000000000000000dee8e2a309ad8a9820433c68",Other chains all increased minimum chainwork as expected.
in src/kernel/chainparams.cpp:190 in 66fb962426 outdated
189 | - .tx_count = 1161875261, 190 | - .dTxRate = 4.620728156243148, 191 | + // Data from RPC: getchaintxstats 4096 00000000000000000000611fd22f2df7c8fbd0688745c3a6c3bb5109cc2a12cb 192 | + .nTime = 1756722903, 193 | + .tx_count = 1235299397, 194 | + .dTxRate = 5.456290459519495,
hodlinator commented at 9:59 AM on September 3, 2025:Mainnet matches output from:
â‚¿ bitcoin-cli getchaintxstats 4096 00000000000000000000611fd22f2df7c8fbd0688745c3a6c3bb5109cc2a12cbOthers seem acceptable.
in contrib/devtools/headerssync-params.py:21 in 943de66b50 outdated
18 | # Expected block interval. [timedelta] 19 | BLOCK_INTERVAL = timedelta(seconds=600) 20 | 21 | # The number of headers corresponding to the minchainwork parameter. [headers] 22 | -MINCHAINWORK_HEADERS = 886157 23 | +MINCHAINWORK_HEADERS = 912683
hodlinator commented at 10:00 AM on September 3, 2025:MINCHAINWORK_HEADERSmatches assume valid block andHEADER_COMMITMENT_PERIOD+REDOWNLOAD_BUFFER_SIZEare close to numbers predicted for this release in #32579.hodlinator approvedhodlinator commented at 10:02 AM on September 3, 2025: contributorACK 755152ac819a23acf2f9e70316134d74a04d589b
fanquake merged this on Sep 3, 2025fanquake closed this on Sep 3, 2025fanquake deleted the branch on Sep 3, 2025luke-jr referenced this in commit 137d3f9031 on Sep 3, 2025luke-jr referenced this in commit cb074d52a8 on Sep 3, 2025luke-jr referenced this in commit 818a2f87f0 on Sep 3, 2025luke-jr referenced this in commit b73fe786a1 on Sep 3, 2025luke-jr referenced this in commit 470a110142 on Sep 3, 2025luke-jr referenced this in commit 80f8f9a38b on Sep 3, 2025in src/kernel/chainparams.cpp:338 in 755152ac81
333 | @@ -328,17 +334,17 @@ class CTestNet4Params : public CChainParams { 334 | consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].threshold = 1512; // 75% 335 | consensus.vDeployments[Consensus::DEPLOYMENT_TAPROOT].period = 2016; 336 | 337 | - consensus.nMinimumChainWork = uint256{"0000000000000000000000000000000000000000000001d6dce8651b6094e4c1"}; 338 | - consensus.defaultAssumeValid = uint256{"0000000000003ed4f08dbdf6f7d6b271a6bcffce25675cb40aa9fa43179a89f3"}; // 72600 339 | + consensus.nMinimumChainWork = uint256{"00000000000000000000000000000000000000000000034a4690fe592dc49c7c"}; 340 | + consensus.defaultAssumeValid = uint256{"000000000000000180a58e7fa3b0db84b5ea76377524894f53660d93ac839d9b"}; // 91000
darosior commented at 6:46 PM on September 3, 2025:7 weeks ago :grimacing: just in case, heh?
darosior commented at 7:03 PM on September 3, 2025: member-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512
ACK 755152ac819a23acf2f9e70316134d74a04d589b. Verified assumevalid, chainwork and stats for mainnet, testnet4 and signet. Verified the serialized utxo set hash for mainnet. Haven't verified header params. Haven't verified for testnet3. -----BEGIN PGP SIGNATURE-----
iQGzBAEBCgAdFiEEWQtykmla/6W2csuy4T/BRc0/QwQFAmi4kLsACgkQ4T/BRc0/ QwRjPQwArKJge7cs43ejKvvxbtsNtjDfc97jj1CnDtIEJuzKzglFzbdNh0/RY9ef eAWh04+HhUv2FgNbCIL7PnWLletazPlW0GhTroRqhQsgU/r9pT5f06MkjetjWcW1 AoECEpwM8QItyZ0L/8PcPKr4qBdFiOZdkEuhHbRQC3clpPruUokSRXgnU9ISDV3z W1uVt8ToDjDIBDqKBFK1Ne/cReLNpNIcnU0a6y57EsBaQGGP2+5QGVjGFHCNuovB EQ07DfnTfdbhuf01OQlqNtmiaF/jzrRFEmowNqXtEWByQGehW8nmdO5D+oXNeeEW XRpPPuJkzV0O8bk1aIQmnWyNBa0qPj1aY4WMVlEsYkcq2/OrjxFwejMYTC+/DgtQ upGDZ8g5I4rg+FkxWcQz316DoxItupDxP2hE3El3o85pxgdFiQsjOG0mw5N5gELs P55FDxgIEBqB9c9s+EV18mS2LibsRDCy23E4fO6U9dTedfYlTKA/M9vVWYo9GO8S gqRaXTgj =cNGu -----END PGP SIGNATURE-----
LabelsMilestone
30.0
github-metadata-mirror
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-05-02 15:12 UTC
This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me