From 302ad169c1c6acd2dba56e3799db8b27ecb47b48 Mon Sep 17 00:00:00 2001 From: Alex Sharov Date: Thu, 25 Mar 2021 14:57:20 +0700 Subject: [PATCH] Mining: to use correct ibs snapshot (#1601) --- eth/stagedsync/stage_mining_exec.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/eth/stagedsync/stage_mining_exec.go b/eth/stagedsync/stage_mining_exec.go index ac54cb3dbcb..0d4536a8bdb 100644 --- a/eth/stagedsync/stage_mining_exec.go +++ b/eth/stagedsync/stage_mining_exec.go @@ -115,8 +115,10 @@ func addTransactionsToMiningBlock(current *miningBlock, chainConfig *params.Chai noop := state.NewNoopWriter() var miningCommitTx = func(txn *types.Transaction, coinbase common.Address, vmConfig *vm.Config, chainConfig *params.ChainConfig, cc *core.TinyChainContext, ibs *state.IntraBlockState, current *miningBlock) ([]*types.Log, error) { + snap := ibs.Snapshot() receipt, err := core.ApplyTransaction(chainConfig, cc, &coinbase, gasPool, ibs, noop, header, txn, &header.GasUsed, *vmConfig) if err != nil { + ibs.RevertToSnapshot(snap) return nil, err } //if !chainConfig.IsByzantium(header.Number) {