From 4efa84e7c3433f79d038b6cb8573280aa0ba94ba Mon Sep 17 00:00:00 2001 From: LeoGuo621 <335209779@qq.com> Date: Sat, 8 Jul 2023 08:10:34 +0800 Subject: [PATCH 1/2] fix trace tx bug --- x/evm/types/state_transition.go | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/x/evm/types/state_transition.go b/x/evm/types/state_transition.go index 50a082be29..95611002d5 100644 --- a/x/evm/types/state_transition.go +++ b/x/evm/types/state_transition.go @@ -328,19 +328,20 @@ func (st StateTransition) TransitionDb(ctx sdk.Context, config ChainConfig) (exe // return trace log if tracetxlog no matter err = nil or not nil defer func() { var traceLogs []byte + var traceErr error if st.TraceTxLog { result := &core.ExecutionResult{ UsedGas: gasConsumed, Err: err, ReturnData: ret, } - traceLogs, err = GetTracerResult(tracer, result) - if err != nil { - traceLogs = []byte(err.Error()) + traceLogs, traceErr = GetTracerResult(tracer, result) + if traceErr != nil { + traceLogs = []byte(traceErr.Error()) } else { - traceLogs, err = integratePreimage(csdb, traceLogs) - if err != nil { - traceLogs = []byte(err.Error()) + traceLogs, traceErr = integratePreimage(csdb, traceLogs) + if traceErr != nil { + traceLogs = []byte(traceErr.Error()) } } if exeRes == nil { From a3f9c977362aca043c4adfa2d2a9819dc4bcb571 Mon Sep 17 00:00:00 2001 From: LeoGuo621 <335209779@qq.com> Date: Sat, 8 Jul 2023 08:20:05 +0800 Subject: [PATCH 2/2] sort import --- x/evm/types/state_transition.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/x/evm/types/state_transition.go b/x/evm/types/state_transition.go index 95611002d5..a21354e824 100644 --- a/x/evm/types/state_transition.go +++ b/x/evm/types/state_transition.go @@ -7,9 +7,6 @@ import ( "math/big" "strings" - "github.com/okex/exchain/libs/system/trace" - "github.com/okex/exchain/libs/tendermint/types" - "github.com/ethereum/go-ethereum/accounts/abi" "github.com/ethereum/go-ethereum/common" "github.com/ethereum/go-ethereum/common/hexutil" @@ -21,6 +18,8 @@ import ( sdk "github.com/okex/exchain/libs/cosmos-sdk/types" sdkerrors "github.com/okex/exchain/libs/cosmos-sdk/types/errors" "github.com/okex/exchain/libs/cosmos-sdk/types/innertx" + "github.com/okex/exchain/libs/system/trace" + "github.com/okex/exchain/libs/tendermint/types" ) // StateTransition defines data to transitionDB in evm