Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: e2e tests for L1 Pectra activation #13974

Closed

Conversation

geoknee
Copy link
Contributor

@geoknee geoknee commented Jan 24, 2025

@geoknee
Copy link
Contributor Author

geoknee commented Jan 24, 2025

So far seeing this error trying to run action tests (new or existing, same error):

Running tool: go test -timeout 30s -run ^TestHoloceneActivationAtGenesis$ github.com/ethereum-optimism/optimism/op-e2e/actions/upgrades -v

panic: revision id 10 cannot be reverted

goroutine 40 [running]:
github.com/ethereum/go-ethereum/core/state.(*journal).revertToSnapshot(0x14000ba5ec0, 0xa, 0x1400205e180)
        /Users/georgeknee/go/pkg/mod/github.com/ethereum-optimism/op-geth@v1.101413.0-dev.0/core/state/journal.go:91 +0x104
github.com/ethereum/go-ethereum/core/state.(*StateDB).RevertToSnapshot(0x140023dc640?, 0x14000980310?)
        /Users/georgeknee/go/pkg/mod/github.com/ethereum-optimism/op-geth@v1.101413.0-dev.0/core/state/statedb.go:758 +0x28
github.com/ethereum-optimism/optimism/op-chain-ops/script/forking.(*ForkableState).RevertToSnapshot(0x140001d6d80?, 0x14000331110?)
        /Users/georgeknee/code/ethereum-optimism/optimism/op-chain-ops/script/forking/state.go:370 +0x28
github.com/ethereum/go-ethereum/core/vm.(*EVM).Call(0x14000241340, {0x104f3b940?, 0x140031cc348?}, {0xb9, 0xd1, 0x8, 0xbc, 0x3b, 0x9a, 0xfb, ...}, ...)
        /Users/georgeknee/go/pkg/mod/github.com/ethereum-optimism/op-geth@v1.101413.0-dev.0/core/vm/evm.go:246 +0x758
github.com/ethereum-optimism/optimism/op-chain-ops/script.(*Host).Call(0x1400069a000, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...}, ...)
        /Users/georgeknee/code/ethereum-optimism/optimism/op-chain-ops/script/script.go:336 +0xdc
github.com/ethereum-optimism/optimism/op-chain-ops/script.WithScript[...].(*Host).ScriptBackendFn.func3()
        /Users/georgeknee/code/ethereum-optimism/optimism/op-chain-ops/script/script.go:764 +0xa0
github.com/ethereum-optimism/optimism/op-chain-ops/script.hydrateBindingsField.func4({0x14000ae8138?, 0x1?, 0x1?})
        /Users/georgeknee/code/ethereum-optimism/optimism/op-chain-ops/script/bindings.go:182 +0x9c
github.com/ethereum-optimism/optimism/op-deployer/pkg/deployer/opcm.RunScriptVoid[...](0x1400069a000, {{0x5c, 0xbb, 0xfe, 0x57, 0xc, 0xbd, 0xc5, 0x30, 0x2e, ...}, ...}, ...)
        /Users/georgeknee/code/ethereum-optimism/optimism/op-deployer/pkg/deployer/opcm/script.go:74 +0x204
github.com/ethereum-optimism/optimism/op-deployer/pkg/deployer/opcm.SetDisputeGameImpl(...)
        /Users/georgeknee/code/ethereum-optimism/optimism/op-deployer/pkg/deployer/opcm/dispute_game_factory.go:20
github.com/ethereum-optimism/optimism/op-deployer/pkg/deployer/pipeline.deployDisputeGame(0x14000b65aa0, 0x14000378600, 0x140002406e0, 0x14000a76340, {{0xfe, {0x3, 0xc7, 0xae, 0x75, 0x87, ...}, ...}, ...})
        /Users/georgeknee/code/ethereum-optimism/optimism/op-deployer/pkg/deployer/pipeline/dispute_games.go:138 +0xb5c
github.com/ethereum-optimism/optimism/op-deployer/pkg/deployer/pipeline.DeployAdditionalDisputeGames(0x14000b65aa0, 0x140001d6ae0, 0x14000378600, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...})
        /Users/georgeknee/code/ethereum-optimism/optimism/op-deployer/pkg/deployer/pipeline/dispute_games.go:40 +0x25c
github.com/ethereum-optimism/optimism/op-deployer/pkg/deployer.ApplyPipeline.func10()
        /Users/georgeknee/code/ethereum-optimism/optimism/op-deployer/pkg/deployer/apply.go:331 +0x38
github.com/ethereum-optimism/optimism/op-deployer/pkg/deployer.ApplyPipeline({0x104f514e0, 0x10646aee0}, {{0x1049b25b0, 0x0}, {0x103b7dfe1, 0x7}, 0x140005204b0, 0x140001d6ae0, 0x14000378600, {0x104f668b8, ...}, ...})
        /Users/georgeknee/code/ethereum-optimism/optimism/op-deployer/pkg/deployer/apply.go:358 +0x1700
github.com/ethereum-optimism/optimism/op-e2e/config.initAllocType.func1({0x103b80aff, 0x8})
        /Users/georgeknee/code/ethereum-optimism/optimism/op-e2e/config/init.go:309 +0x61c
created by github.com/ethereum-optimism/optimism/op-e2e/config.initAllocType in goroutine 1
        /Users/georgeknee/code/ethereum-optimism/optimism/op-e2e/config/init.go:267 +0x290
panic: revision id 10 cannot be reverted

Copy link

codecov bot commented Jan 27, 2025

Codecov Report

Attention: Patch coverage is 11.11111% with 8 lines in your changes missing coverage. Please review.

Project coverage is 42.72%. Comparing base (e6b13b7) to head (b796361).
Report is 25 commits behind head on seb/op-geth-upstream-pre-v1.14.13-master.

Files with missing lines Patch % Lines
op-chain-ops/genesis/genesis.go 0.00% 5 Missing ⚠️
op-chain-ops/cmd/op-simulate/main.go 0.00% 1 Missing ⚠️
op-program/chainconfig/chaincfg.go 0.00% 1 Missing ⚠️
op-program/client/l2/engineapi/l2_engine_api.go 0.00% 1 Missing ⚠️
Additional details and impacted files
@@                              Coverage Diff                              @@
##           seb/op-geth-upstream-pre-v1.14.13-master   #13974       +/-   ##
=============================================================================
- Coverage                                     90.19%   42.72%   -47.47%     
=============================================================================
  Files                                           108      840      +732     
  Lines                                          4609    70209    +65600     
  Branches                                        756      756               
=============================================================================
+ Hits                                           4157    30000    +25843     
- Misses                                          368    38027    +37659     
- Partials                                         84     2182     +2098     
Flag Coverage Δ
contracts-bedrock-tests 87.78% <ø> (-2.41%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
op-chain-ops/genesis/config.go 32.89% <ø> (ø)
op-service/sources/types.go 66.25% <100.00%> (ø)
op-chain-ops/cmd/op-simulate/main.go 0.00% <0.00%> (ø)
op-program/chainconfig/chaincfg.go 35.41% <0.00%> (ø)
op-program/client/l2/engineapi/l2_engine_api.go 33.51% <0.00%> (ø)
op-chain-ops/genesis/genesis.go 0.00% <0.00%> (ø)

... and 740 files with indirect coverage changes

@geoknee
Copy link
Contributor Author

geoknee commented Jan 27, 2025

Hacked around the above issues in 2e7ce52 for now, but it will need debugging

seeing error:

op-e2e/actions/upgrades/sequencer.go:410:           ERROR[01-27|11:34:27.024] Sequencer encountered reset signal, aborting work role=sequencer err="failed to find the L2 Heads to start from: failed to retrieve block 0 from L1 for comparison against 0xc9da7d7bb9c5c83893967d4c694c090aa56d4c3ec1ed682c1873f5a10c95e6d6: operation failed permanently after 5 attempts: failed to fetch header by num 0: failed to verify block hash: computed 0xc304daa3f811279dd3001c67aebb7bd4314c4c7cacb87a33995c107767ace884 but RPC said 0xc9da7d7bb9c5c83893967d4c694c090aa56d4c3ec1ed682c1873f5a10c95e6d6"
@geoknee
Copy link
Contributor Author

geoknee commented Jan 27, 2025

Hacked around some more to get the test to run further. Now seeing

transaction type not supported: received type 4

which, interestingly, is the same error I've seen trying to submit SetCodeTx to our l1-Pectra-enabled kurtosis devnet.

Digging around in upstream geth, with a commit from today's master branch, it looks to me that the legacy transaction pool does not accept type 4 transactions yet https://github.com/ethereum/go-ethereum/blob/f0e8a3e9c8a59ce3c97c2f474eee7a1e86544e8d/core/txpool/legacypool/legacypool.go#L604-L625

@geoknee
Copy link
Contributor Author

geoknee commented Jan 27, 2025

In favour of #14006 (rebasing and dropping hacky commits)

@geoknee geoknee closed this Jan 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants