Closed janzhanal closed 1 hour ago
Hi @janzhanal, thanks for raising this, I'm taking a look.
Hi @janzhanal I think the issue is to do with calling debug traceBlock methods. I guess we have a problem in our trace block function. So I think if you avoid calling any trace block api endpoints then you shouldn't see this re-ocurring. You may be able to use debug_TraceTransaction in the meantime while we look at fixing block tracing.
Hi @janzhanal I've pushed a potential fix to this branch (https://github.com/celo-org/op-geth/tree/piersy/fix-block-tracing) you should be able to pull an image for that from here (us-west1-docker.pkg.dev/blockchaintestsglobaltestnet/dev-images/op-geth:26785e097572ea11957716554a5f40c29860869b). Could you let me know if that is solving your problem?
Hello, thx for quick reply, but crashed again (and keeps crashing):
ERROR[10-03|20:20:20.227] RPC method debug_traceBlockByNumber crashed: revision id 326 cannot be reverted
goroutine 5429 [running]:
github.com/ethereum/go-ethereum/rpc.(*callback).call.func1()
github.com/ethereum/go-ethereum/rpc/service.go:199 +0x85
panic({0x1875be0?, 0xc0190cd230?})
runtime/panic.go:770 +0x132
github.com/ethereum/go-ethereum/core/state.(*StateDB).RevertToSnapshot(0xc00e756380, 0x146)
github.com/ethereum/go-ethereum/core/state/statedb.go:778 +0x11b
github.com/ethereum/go-ethereum/core/vm.(*EVM).Call(0xc017616f00, {0x2823ea0?, 0xc0179ee0d8?}, {0x11, 0x53, 0xb6, 0xb8, 0xf9, 0x99, 0xc1, ...}, ...)
github.com/ethereum/go-ethereum/core/vm/evm.go:288 +0xc15
github.com/ethereum/go-ethereum/core.(*StateTransition).innerTransitionDb(0xc0179ecbb8)
github.com/ethereum/go-ethereum/core/state_transition.go:651 +0x9d9
github.com/ethereum/go-ethereum/core.(*StateTransition).TransitionDb(0xc0179ecbb8)
github.com/ethereum/go-ethereum/core/state_transition.go:537 +0xf7
github.com/ethereum/go-ethereum/core.ApplyMessage(0xc017616f00, 0xc0179d42a0, 0xc017562ad0)
github.com/ethereum/go-ethereum/core/state_transition.go:250 +0x386
github.com/ethereum/go-ethereum/eth/tracers.(*API).traceBlockParallel(0xc00897ceb0, {0x2834400, 0xc0169ecc80}, 0xc00d12eb40, 0xc00e756380, 0xc00e39b7c0)
github.com/ethereum/go-ethereum/eth/tracers/api.go:727 +0xb1c
github.com/ethereum/go-ethereum/eth/tracers.(*API).traceBlock(0xc00897ceb0, {0x2834400, 0xc0169ecc80}, 0xc00d12eb40, 0xc00e39b7c0)
github.com/ethereum/go-ethereum/eth/tracers/api.go:630 +0x212
github.com/ethereum/go-ethereum/eth/tracers.(*API).TraceBlockByNumber(0xc00897ceb0, {0x2834400, 0xc0169ecc80}, 0x197cbf5, 0xc00e39b7c0)
github.com/ethereum/go-ethereum/eth/tracers/api.go:458 +0x257
reflect.Value.call({0xc009d10cb0?, 0xc009d58320?, 0x60?}, {0x1b2f35a, 0x4}, {0xc00e3a7620, 0x4, 0xc00e3a7620?})
reflect/value.go:596 +0xca6
reflect.Value.Call({0xc009d10cb0?, 0xc009d58320?, 0x2?}, {0xc00e3a7620?, 0x16?, 0x16?})
reflect/value.go:380 +0xb9
github.com/ethereum/go-ethereum/rpc.(*callback).call(0xc009d66b40, {0x2834400, 0xc0169ecc80}, {0xc016b43110, 0x18}, {0xc016b55920, 0x2, 0x4debaf?})
github.com/ethereum/go-ethereum/rpc/service.go:205 +0x36d
github.com/ethereum/go-ethereum/rpc.(*handler).runMethod(0xc00e3b2b40?, {0x2834400?, 0xc0169ecc80?}, 0xc0171121c0, 0x2?, {0xc016b55920?, 0xc00abb5dc0?, 0x41bed8?})
github.com/ethereum/go-ethereum/rpc/handler.go:568 +0x3c
github.com/ethereum/go-ethereum/rpc.(*handler).handleCall(0xc00e3ac5a0, 0xc016b55860, 0xc0171121c0)
github.com/ethereum/go-ethereum/rpc/handler.go:515 +0x22f
github.com/ethereum/go-ethereum/rpc.(*handler).handleCallMsg(0xc00e3ac5a0, 0xc016b55860, 0xc0171121c0)
github.com/ethereum/go-ethereum/rpc/handler.go:473 +0x22d
github.com/ethereum/go-ethereum/rpc.(*handler).handleNonBatchCall(0xc00e3ac5a0, 0xc016b55860, 0xc0171121c0)
github.com/ethereum/go-ethereum/rpc/handler.go:299 +0x18a
github.com/ethereum/go-ethereum/rpc.(*handler).handleMsg.func1.1(0x2834400?)
github.com/ethereum/go-ethereum/rpc/handler.go:272 +0x25
github.com/ethereum/go-ethereum/rpc.(*handler).startCallProc.func1()
github.com/ethereum/go-ethereum/rpc/handler.go:390 +0xbe
created by github.com/ethereum/go-ethereum/rpc.(*handler).startCallProc in goroutine 5154
github.com/ethereum/go-ethereum/rpc/handler.go:386 +0x79
WARN [10-03|20:20:20.227] Served debug_traceBlockByNumber conn=127.0.0.1:50748 reqid=0 duration=61.831267ms err="method handler crashed"
fatal error: concurrent map read and map write
I can paste whole trace if needed...
Thanks, based on your commit we found the right image which seems to be working: us-west1-docker.pkg.dev/blockchaintestsglobaltestnet/dev-images/op-geth:11727696daa36973cae5a1a8dd2268316f57465b
Hi @janzhanal my apologies for the incorrect docker link. Glad it seems to be working for you, please let me know if you face any other issues with it.
Till now it seems stable and no errors were reported...
System information
Geth version:
v1.101408.0
fromus-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-geth:celo8
CL client & version: us-west1-docker.pkg.dev/devopsre/celo-blockchain-public/op-node:celo9 OS & Version: Linux Commit hash : (ifdevelop
)Expected behaviour
The app runs without exits...
Actual behaviour
The app crashes everytime the chain is on tip. Same issue appears on two separate instances.
Steps to reproduce the behaviour
Everytime when tip is catched
Configuration of get used (running in docker, with network host mode)