Fatal: Failed to register the Ethereum service: gap (#12678276) in the chain between ancients and leveldb

Hi there,

I’m getting this fatal error trying to restart geth.

In dappnode, Geth is stuck on ‘restarting’. I’ve restarted / rebooted. The backup repository is doing its thing :+1:.

I found this thread Fatal: Failed to register the Ethereum service: gap (#492149) in the chain between ancients and leveldb · Issue #22374 · ethereum/go-ethereum · GitHub that looks identical to mine, and it looks like the suggestion is to resync geth… I thought I’d post here and see if any suggestions to fix. If I do need to resync, how do I do this on dappnode?

Just following up - what is recommended here? Should I delete the Geth Volume(s) or Remove / reinstall the Geth package? Will Prysm continue to run on the remote repository if I do that? What is safest way? I don’t want to blow anything up :smiley:

Thanks-

Hi all, what do I do here? I’m still stuck using the remote repository and have have the error:

Client: Geth
Status: Not available (using remote) - not available: Error: connect ECONNREFUSED 172.33.0.5:8545

Core DAppNode Packages versions

  • bind.dnp.dappnode.eth: 0.2.6
  • core.dnp.dappnode.eth: 0.2.47
  • dappmanager.dnp.dappnode.eth: 0.2.42, branch: v0.2.43, commit: ec541936
  • https.dnp.dappnode.eth: 0.1.1
  • ipfs.dnp.dappnode.eth: 0.2.14
  • vpn.dnp.dappnode.eth: 0.2.8, commit: f9a8743e
  • wifi.dnp.dappnode.eth: 0.2.7

System info

  • dockerComposeVersion: 1.25.5
  • dockerServerVersion: 20.10.2
  • dockerCliVersion: 20.10.2
  • os: debian
  • versionCodename: bullseye
  • architecture: amd64
  • kernel: 5.10.0-1-amd64
  • Disk usage: 33%

Im thinking of adding removedb flag in extra options and restarting Geth to rebuild db. OR, is it better to do within dappnode like deleting the Geth volume under packages > Geth > Volume > Geth > Remove a better way?

Thanks,

Am I on my own here? Should I add —removedb flag and restart geth or is there a better way within dappnode?

Hey seems like support is few and far between here. Sorry your having unresolved issues, I am in the same boat for the last few days. I am just a user so can’t be of much help but I do at least know how to delete geth and the Database and resync. If you got to the packages section of dappnode and select geth there is a trash can icon that will delete the geth package and ask you if you would also like to delete the database. Then you can redownload geth and resync. I believe this is the correct way to do it.

The other note I have is are you using a remote node like infura or similar in prysm? Its an easy setup, just need a free account on their website. It is my understanding that prysm only needs the eth1 node when it is selected to be a block proposer. So if you don’t have that setup you will do attestations fine but when it comes to a block proposal you will miss it and lose out on those potential funds.

Hopefully someone more knowledgeable then us can chime in on our issues soon.

Hi Simon,

Looks like you and I have a similar issue. I don’t see anything wrong with my drives - 2 x 2tb ssds. Geth is stuck ‘RESTARTING’ in dappnode. I have been using the repository source now for about a month. Prysm is working just fine and attestations and block proposals have been fine, so I haven’t been panicked about fixing it. When I have a block of time to re-visit this, I will update this thread with any resolution.

I’m leaning towards starting Geth up with -removedb flag as I don’t want to trash the keystore:

Cleanup

Geth’s blockchain and state databases can be removed with:

geth removedb

This is useful for deleting an old chain and sync’ing to a new one. It only affects data directories that can be re-created on synchronisation and does not touch the keystore.

Source: Backup & Restore | Go Ethereum

Thanks

you talking about your eth 2 validator key store? Think that should be in prysm and has nothing to do with geth, but I could be mistaken.

I had kept putting this issue off as everything was working fine with the fallback remote repository. The solution turned out to be super simple, so I wanted to update here in case others had the same issue. I just went to Geth->Volume and trashed the Geth Volume. At the time it was about 600gb. Restarted Geth, and now I’m resyncing from block 1. Seems like everything is a-ok so far. If I don’t get a full sync or if anything blows up, will update.