From bf6b5923d7d74941a8dc2105bfa7c842e56c6ad5 Mon Sep 17 00:00:00 2001 From: Jeremy Wei Date: Wed, 20 Nov 2024 09:12:52 -0500 Subject: [PATCH] Make trace block resilient to individual trace tx errors (#36) * Make trace block resilient to individual trace tx errors * add logging * add more logging * add more logging 2 * add more logging 3 * cleanup all logs --- eth/tracers/api.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/eth/tracers/api.go b/eth/tracers/api.go index 929f41cb0a..2886fcd0cb 100644 --- a/eth/tracers/api.go +++ b/eth/tracers/api.go @@ -613,9 +613,10 @@ func (api *API) traceBlock(ctx context.Context, block *types.Block, config *Trac } res, err := api.traceTx(ctx, tx, msg, txctx, blockCtx, statedb, config) if err != nil { - return nil, err + results[i] = &txTraceResult{TxHash: tx.Hash(), Error: err.Error()} + } else { + results[i] = &txTraceResult{TxHash: tx.Hash(), Result: res} } - results[i] = &txTraceResult{TxHash: tx.Hash(), Result: res} } return results, nil }