erigontech / erigon

Ethereum implementation on the efficiency frontier https://erigon.gitbook.io
GNU Lesser General Public License v3.0
3.12k stars 1.11k forks source link

Downloader can't recover from a fork, stuck with - `missing body at block=xxx` #11509

Open somnathb1 opened 1 month ago

somnathb1 commented 1 month ago

System information

Erigon version: ./erigon --version 3.00.0-alpha1-da0d58c2

OS & Version: Linux

Commit hash: git_commit=da0d58c2bf7271a53df8b96db9779feeca9fced1

Consensus Layer: Lighthouse

Consensus Layer Command (with flags/config):

Chain/Network: Pectra-devnet-2

Expected behaviour

Erigon unwinds to the point of the fork, downloads the correct blocks based on the hashes obtained from the CL

Actual behaviour

Erigon is stuck on

[EngineBlockDownloader] Could not insert headers and bodies err="missing body at block=30181"

even if downloaded blocks around the stuck block height

Steps to reproduce the behaviour

Let an erigon client fork for some reason. Stop it, restart it after some time.

Backtrace

Attached devops grandine erigon.txt

awskii commented 1 month ago

that could be due to invalid blockbodies file for required range, remove them and restart just to see if case persists, you are just 30k blocks away from 0.

somnathb1 commented 1 month ago

It will probably work, but the node should be able to auto-recover from this situation. Also, it can be expected of the node to not be stuck with a missing block body and download it from the network. There is a bug somewhere in the downloader

that could be due to invalid blockbodies file for required range, remove them and restart just to see if case persists, you are just 30k blocks away from 0.