Aleth syncing restarts due to receiving (suspected) ETC block header
I'm seeing Aleth syncing repeatedly restart due to it receiving what I suspect to be an ETC block header for dao hard fork block + 1:
INFO 12-04 20:38:44 p2p net Looking for peers...
INFO 12-04 20:39:14 p2p net Active peer count: 4
INFO 12-04 20:39:14 p2p net Looking for peers...
INFO 12-04 20:39:44 p2p net Active peer count: 4
INFO 12-04 20:39:44 p2p net Looking for peers...
INFO 12-04 20:40:14 p2p net Active peer count: 4
INFO 12-04 20:40:14 p2p net Looking for peers...
WARN 12-04 20:40:33 p2p sync Unknown block header 1920001 #ab7668df… (Restart syncing with ##e31cc195…)
INFO 12-04 20:40:37 p2p sync Starting full sync
INFO 12-04 20:40:42 eth client 221 blocks imported in 2184 ms (101.172 blocks/s) in #377441
INFO 12-04 20:40:44 p2p net Active peer count: 4
INFO 12-04 20:40:44 p2p net Looking for peers...
INFO 12-04 20:40:44 eth client 198 blocks imported in 2211 ms (89.5138 blocks/s) in #377639
INFO 12-04 20:40:45 eth client 93 blocks imported in 1308 ms (71.0578 blocks/s) in #377732
INFO 12-04 20:41:14 p2p net Active peer count: 4
INFO 12-04 20:41:14 p2p net Looking for peers...
INFO 12-04 20:41:44 p2p net Active peer count: 4
INFO 12-04 20:41:44 p2p net Looking for peers...
INFO 12-04 20:42:14 p2p net Active peer count: 4
INFO 12-04 20:42:14 p2p net Looking for peers...
INFO 12-04 20:42:44 p2p net Active peer count: 4
INFO 12-04 20:42:44 p2p net Looking for peers...
INFO 12-04 20:43:14 p2p net Active peer count: 4
INFO 12-04 20:43:14 p2p net Looking for peers...
INFO 12-04 20:43:44 p2p net Active peer count: 4
INFO 12-04 20:43:44 p2p net Looking for peers...
INFO 12-04 20:44:14 p2p net Active peer count: 5
INFO 12-04 20:44:14 p2p net Looking for peers...
INFO 12-04 20:44:44 p2p net Active peer count: 3
INFO 12-04 20:44:44 p2p net Looking for peers...
INFO 12-04 20:45:14 p2p net Active peer count: 4
INFO 12-04 20:45:14 p2p net Looking for peers...
INFO 12-04 20:45:45 p2p net Active peer count: 4
INFO 12-04 20:45:45 p2p net Looking for peers...
INFO 12-04 20:46:15 p2p net Active peer count: 4
INFO 12-04 20:46:15 p2p net Looking for peers...
INFO 12-04 20:46:45 p2p net Active peer count: 3
INFO 12-04 20:46:45 p2p net Looking for peers...
INFO 12-04 20:47:15 p2p net Active peer count: 4
INFO 12-04 20:47:15 p2p net Looking for peers...
INFO 12-04 20:47:45 p2p net Active peer count: 3
INFO 12-04 20:47:45 p2p net Looking for peers...
INFO 12-04 20:48:15 p2p net Active peer count: 4
INFO 12-04 20:48:15 p2p net Looking for peers...
INFO 12-04 20:48:45 p2p net Active peer count: 3
INFO 12-04 20:48:45 p2p net Looking for peers...
INFO 12-04 20:49:15 p2p net Active peer count: 3
INFO 12-04 20:49:15 p2p net Looking for peers...
INFO 12-04 20:49:45 p2p net Active peer count: 4
INFO 12-04 20:49:45 p2p net Looking for peers...
INFO 12-04 20:50:15 p2p net Active peer count: 3
INFO 12-04 20:50:15 p2p net Looking for peers...
INFO 12-04 20:50:45 p2p net Active peer count: 3
INFO 12-04 20:50:45 p2p net Looking for peers...
INFO 12-04 20:51:15 p2p net Active peer count: 4
INFO 12-04 20:51:15 p2p net Looking for peers...
INFO 12-04 20:51:45 p2p net Active peer count: 3
INFO 12-04 20:51:45 p2p net Looking for peers...
INFO 12-04 20:52:15 p2p net Active peer count: 3
INFO 12-04 20:52:15 p2p net Looking for peers...
WARN 12-04 20:52:19 p2p sync Unknown block header 1920001 #ab7668df… (Restart syncing with ##e31cc195…)
INFO 12-04 20:52:22 p2p sync Starting full sync
INFO 12-04 20:52:22 eth client 2 blocks imported in 6 ms (322.165 blocks/s) in #377734
INFO 12-04 20:52:23 eth client 83 blocks imported in 722 ms (114.939 blocks/s) in #377817
INFO 12-04 20:52:24 eth client 92 blocks imported in 755 ms (121.838 blocks/s) in #377909
INFO 12-04 20:52:24 eth client 15 blocks imported in 104 ms (143.901 blocks/s) in #377924
INFO 12-04 20:52:45 p2p net Active peer count: 3
INFO 12-04 20:52:45 p2p net Looking for peers...
INFO 12-04 20:53:16 p2p net Active peer count: 3
INFO 12-04 20:53:16 p2p net Looking for peers...
INFO 12-04 20:53:46 p2p net Active peer count: 4
INFO 12-04 20:53:46 p2p net Looking for peers...
INFO 12-04 20:54:16 p2p net Active peer count: 3
INFO 12-04 20:54:16 p2p net Looking for peers...
INFO 12-04 20:54:46 p2p net Active peer count: 3
INFO 12-04 20:54:46 p2p net Looking for peers...
INFO 12-04 20:55:16 p2p net Active peer count: 4
INFO 12-04 20:55:16 p2p net Looking for peers...
INFO 12-04 20:55:46 p2p net Active peer count: 3
INFO 12-04 20:55:46 p2p net Looking for peers...
INFO 12-04 20:56:16 p2p net Active peer count: 3
INFO 12-04 20:56:16 p2p net Looking for peers...
INFO 12-04 20:56:46 p2p net Active peer count: 3
INFO 12-04 20:56:46 p2p net Looking for peers...
INFO 12-04 20:57:16 p2p net Active peer count: 3
INFO 12-04 20:57:16 p2p net Looking for peers...
INFO 12-04 20:57:46 p2p net Active peer count: 3
INFO 12-04 20:57:46 p2p net Looking for peers...
INFO 12-04 20:58:16 p2p net Active peer count: 3
INFO 12-04 20:58:16 p2p net Looking for peers...
INFO 12-04 20:58:47 p2p net Active peer count: 3
INFO 12-04 20:58:47 p2p net Looking for peers...
INFO 12-04 20:59:17 p2p net Active peer count: 3
INFO 12-04 20:59:17 p2p net Looking for peers...
INFO 12-04 20:59:47 p2p net Active peer count: 3
INFO 12-04 20:59:47 p2p net Looking for peers...
INFO 12-04 21:00:17 p2p net Active peer count: 3
INFO 12-04 21:00:17 p2p net Looking for peers...
INFO 12-04 21:00:47 p2p net Active peer count: 3
INFO 12-04 21:00:47 p2p net Looking for peers...
INFO 12-04 21:01:17 p2p net Active peer count: 3
INFO 12-04 21:01:17 p2p net Looking for peers...
INFO 12-04 21:01:47 p2p net Active peer count: 3
INFO 12-04 21:01:47 p2p net Looking for peers...
INFO 12-04 21:02:18 p2p net Active peer count: 4
INFO 12-04 21:02:18 p2p net Looking for peers...
INFO 12-04 21:02:48 p2p net Active peer count: 3
INFO 12-04 21:02:48 p2p net Looking for peers...
INFO 12-04 21:03:18 p2p net Active peer count: 4
INFO 12-04 21:03:18 p2p net Looking for peers...
INFO 12-04 21:03:48 p2p net Active peer count: 3
INFO 12-04 21:03:48 p2p net Looking for peers...
INFO 12-04 21:04:18 p2p net Active peer count: 3
INFO 12-04 21:04:18 p2p net Looking for peers...
INFO 12-04 21:04:48 p2p net Active peer count: 3
INFO 12-04 21:04:48 p2p net Looking for peers...
WARN 12-04 21:04:51 p2p sync Unknown block header 1920001 #ab7668df… (Restart syncing with ##e31cc195…)
INFO 12-04 21:04:52 p2p sync Starting full sync
INFO 12-04 21:04:55 eth client 102 blocks imported in 760 ms (134.08 blocks/s) in #378026
Here's where the header check is failing: https://github.com/ethereum/aleth/blob/d873d7363cae82113734afa671e026fed11905b2/libethereum/BlockChainSync.cpp#L528-L542
This could be because we don't perform the dao hard fork check with a new peer until the latest block in our local chain is >= the dao hard fork block (1.92M): https://github.com/ethereum/aleth/blob/d873d7363cae82113734afa671e026fed11905b2/libethereum/BlockChainSync.cpp#L215-L220
One way to fix this might be to initiate a dao hard fork test with a peer when we detect that the most recent block in our local chain is < the dao hard fork block and we're requesting a header from the peer which is >= the dao hard fork block.
Note that we request block headers from peers in BlockChainSync::requestBlocks: https://github.com/ethereum/aleth/blob/22bf7339583617692f30fa21d946b5845dca6b71/libethereum/BlockChainSync.cpp#L331-L386
ETC bootnodes for testing: https://github.com/multi-geth/multi-geth/blob/864e5788786f198ef4d64d151766d10bab13a82d/params/bootnodes_classic.go#L20-L39
Do I need to resynchronize the data for this hard fork(Muir Glacier ) from block 0?
Do I need to resynchronize the data for this hard fork(Muir Glacier ) from block 0?
@halfalicious
@wifi-ctrl None of the hard forks require a resync from genesis. Requiring a resync from genesis means that you’re on an entirely new chain.