mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-03-13 06:39:03 +00:00
This PR contains two changes: Firstly, the finalized header will be resolved from local chain if it's not recently announced via the `engine_newPayload`. What's more importantly is, in the downloader, originally there are two code paths to push forward the pivot point block, one in the beacon header fetcher (`fetchHeaders`), and another one is in the snap content processer (`processSnapSyncContent`). Usually if there are new blocks and local pivot block becomes stale, it will firstly be detected by the `fetchHeaders`. `processSnapSyncContent` is fully driven by the beacon headers and will only detect the stale pivot block after synchronizing the corresponding chain segment. I think the detection here is redundant and useless. |
||
|---|---|---|
| .. | ||
| api.go | ||
| beacondevsync.go | ||
| beaconsync.go | ||
| downloader.go | ||
| downloader_test.go | ||
| events.go | ||
| fetchers.go | ||
| fetchers_concurrent.go | ||
| fetchers_concurrent_bodies.go | ||
| fetchers_concurrent_receipts.go | ||
| metrics.go | ||
| peer.go | ||
| queue.go | ||
| queue_test.go | ||
| resultstore.go | ||
| skeleton.go | ||
| skeleton_test.go | ||
| statesync.go | ||
| syncmode.go | ||
| testchain_test.go | ||