diff --git a/eth/catalyst/api.go b/eth/catalyst/api.go index d577e2a9ec081..1e487d7781380 100644 --- a/eth/catalyst/api.go +++ b/eth/catalyst/api.go @@ -79,8 +79,10 @@ type blockExecutionEnv struct { func (env *blockExecutionEnv) commitTransaction(tx *types.Transaction, coinbase common.Address) error { vmconfig := *env.chain.GetVMConfig() + snap := env.state.Snapshot() receipt, err := core.ApplyTransaction(env.chain.Config(), env.chain, &coinbase, env.gasPool, env.state, env.header, tx, &env.header.GasUsed, vmconfig) if err != nil { + env.state.RevertToSnapshot(snap) return err } env.txs = append(env.txs, tx)