Open letsbangout opened 1 day ago
Your website at https://docs.boba.network/developer/node-operators/snapshot-downloads lists two geth snapshots, one is https://boba-db.s3.us-east-2.amazonaws.com/mainnet/boba-mainnet-geth-db-114909.tgz from April, the other is https://boba-db.s3.us-east-2.amazonaws.com/mainnet/boba-mainnet-geth-snapshot-5683043.tgz from July - the former is the one I mentioned above which is also linked in the docker-compose..yml
I just wiped my data directory and tried the latter snapshot. I also forced docker to use op-node 1.6.11 and geth v1.101408.0. I obtained these versions from your website at https://docs.boba.network/developer/node-operators/software-release which mentions they are the minimum acceptable software versions. Now I see a similar error, but it errors on a different block. I have again tried a different RPC with no change. The common variable is obviously the snapshot data.
t=2024-10-29T02:23:22+0000 lvl=warn msg="Engine temporary error" err="derivation failed: temp: failed to fetch blobs: failed to get blob sidecars for L1BlockRef 0x8842812c4dc4eb11b122f188f82506b6e286d3ac755a4374c7a5f7880591500d:20421299: failed to fetch blob sidecars for slot 9628482 block 0x8842812c4dc4eb11b122f188f82506b6e286d3ac755a4374c7a5f7880591500d:20421299: #returned blobs(0) != #requested blobs(1)"
So this may be obvious to some of you, but it seems the importance of a good ETH beacon archive is crucial. The basis of these errors seems to be a lack of ETH beacon blob data. Many beacon clients are set to prune this data. For example, the pruning policy of Lighthouse by default is 4096 epochs, at 6.4 minutes each, that only gives about 18 days worth of blob data retention from the tip.
Therefore, perhaps the following changes should be made:
1) A documentation update in the docker-compose-boba-mainnet-geth.yml
to point to the later snapshot from July, along with mention that simply having a 'full Ethereum node' is not sufficient, it must be at least a "full ETH1" plus "many weeks/months of ETH2" or however you choose to word it. In any event, it should be emphasized that it is necessary to point ETH2_HTTP
at a Beacon endpoint which retains at least all of the blobs since the snapshot date.
2) Static version updates to the version of op-node
and geth
used to run new nodes, so that newbies are not confused.
I've been running RPCs for this chain for about a year now. I have experienced persistent synchronization problems which I've documented in another Github issue. I see that a fresh pull of this project, along with a fresh pull of the snapshot URL mentioned in
docker-compose-boba-mainnet-geth.yml
does not apparently yield a working RPC. It seems stuck on a particular block according to the logs below fromop-node
. The problematic portion seems to be"Derivation process temporary error"
. I have pointed by node at a local ETH full node, as well as a local ETH archive node. Both L1's experience this problem. Also I notice that by default, op-node v1.6.3 is used, isn't this an error? Should it not be 1.6.10 or 1.6.11 to account for all hardforks?Logs: