NethermindEth / nethermind

A robust execution client for Ethereum node operators.

Home Page:https://nethermind.io/nethermind-client

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Archive node debug_traceTransaction not working

stdevMac opened this issue · comments

Description
While trying to run debug_traceTransaction on an archive node, the node returned an error.

Steps to Reproduce

  1. run request on a archive node: curl -X POST -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "debug_traceTransaction", "params":["0x673b18c7072a2ac0b3198e82ad81e1f14e2b15f4545ae70c9b811ea8e3413bec"]}' http://localhost:8545

Actual behavior
Getting internal error:

{"jsonrpc":"2.0","error":{"code":-32603,"message":"Internal error","data":"System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.\n ---\u003E System.ArgumentNullException: Value cannot be null. (Parameter \u0027key\u0027)\n   at System.Collections.Generic.Dictionary\u00602.FindValue(TKey key)\n   at Nethermind.Consensus.Tracing.GethStyleTracer.CreateOptionsTracer(BlockHeader block, GethTraceOptions options)\n   at Nethermind.Consensus.Tracing.GethStyleTracer.Trace(Block block, Hash256 txHash, CancellationToken cancellationToken, GethTraceOptions options)\n   at Nethermind.Consensus.Tracing.GethStyleTracer.Trace(Hash256 txHash, GethTraceOptions traceOptions, CancellationToken cancellationToken)\n   at Nethermind.JsonRpc.Modules.DebugModule.DebugRpcModule.debug_traceTransaction(Hash256 transactionHash, GethTraceOptions options)\n   at InvokeStub_IDebugRpcModule.debug_traceTransaction(Object, Span\u00601)\n   at System.Reflection.MethodBaseInvoker.InvokeWithFewArgs(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)\n   --- End of inner exception stack trace ---\n   at System.Reflection.MethodBaseInvoker.InvokeWithFewArgs(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)\n   at Nethermind.JsonRpc.JsonRpcService.ExecuteAsync(JsonRpcRequest request, String methodName, ResolvedMethodInfo method, JsonRpcContext context)"},"id":1}

Expected behavior
Returning the traces properly

Desktop (please complete the following information):
Please provide the following information regarding your setup:

  • Operating System: [e.g. Windows]
  • Version: 1.26.0
  • Installation Method: [e.g. GitHub Release/PPA/Homebrew/Docker]
  • Consensus Client: [e.g. Lodestar v1.4.3]

Additional context
Node was run with the following flags:

--config mainnet_archive \
  --JsonRpc.EnabledModules="[Eth, Subscribe, Trace, TxPool, Web3, Personal, Proof, Net, Parity, Health, Rpc, Debug]" \
  --JsonRpc.EnginePort=8551 \
  --datadir= home/nethermind/.local/data \
  --JsonRpc.JwtSecretFile={jwt_secret_path} \
  --JsonRpc.EngineHost=0.0.0.0 \
  --JsonRpc.Host=0.0.0.0 \
  --Metrics.Enabled=true \
  --Metrics.ExposePort=6060 \

looks like duplicate of #6914 and fixed in #6915