Open maurelian opened 2 years ago
Thank you for the detailed logs! The bug is a concurrent map write to preparedBlocks
: https://github.com/ethereum-optimism/reference-optimistic-geth/blob/2ffee1a8d355874d22090dec1e722d70b85009d7/eth/catalyst/api.go#L222
Somewhere two block-producing forkchoice updates were running in parallel (maybe the first timed out, and the second was started) and ended up writing a block to the same map. Or maybe you were running two rollup nodes?
I'll look through the latest Geth fork for the Kintsugi testnet, this looks like an upstream bug! (which might have been fixed, the current optimism diff is extending a Merge branch from a few weeks ago)
The problem also exists in upstream geth, will try submit a PR tomorrow
Fixed in https://github.com/ethereum/go-ethereum/pull/24236
We'll rebase the L2 diff when it gets merged. (and squash the L2 changes, minimal simple diff ftw)
In E2E testing I'm currently getting a panic in
refl2geth
. This happens with everything freshly built.rollupnode
is being built from theinput-deriv-test-cleanup
of the specs repo.refl2geth
is being built from theoptimism-prototype
branch.These are the errors logged by the
rollupnode
:This is the full logs and trace from
refl2geth
: