Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing RPC Method Definitions for Debug API in RpcMethod.java #8153

Open
GGos3 opened this issue Jan 22, 2025 · 0 comments
Open

Missing RPC Method Definitions for Debug API in RpcMethod.java #8153

GGos3 opened this issue Jan 22, 2025 · 0 comments

Comments

@GGos3
Copy link

GGos3 commented Jan 22, 2025

Description

I encountered an error while attempting to enable Besu's debug API methods using the --rpc-http-api-method-no-auth configuration option.

Attempted Debug Methods

I tried to enable the following debug API methods as documented in the Besu Documentation:

debug_accountAt
debug_accountRange
debug_batchSendRawTransaction
debug_getBadBlocks
debug_getRawBlock
debug_getRawHeader
debug_getRawReceipts
debug_getRawTransaction
debug_metrics
debug_replayBlock
debug_resyncWorldState
debug_setHead
debug_standardTraceBlockToFile
debug_standardTraceBadBlockToFile
debug_storageRangeAt
debug_traceTransaction
debug_traceBlock
debug_traceBlockByHash
debug_traceBlockByNumber
debug_traceCall

Error Message

picocli.CommandLine$ParameterException: Invalid value for option '--rpc-http-api-methods-no-auth', options must be valid RPC methods
    at org.hyperledger.besu.cli.options.JsonRpcHttpOptions.validate(JsonRpcHttpOptions.java:238) ~[besu-24.12.0.jar:24.12.0]
    at org.hyperledger.besu.cli.BesuCommand.validateRpcOptionsParams(BesuCommand.java:1575) ~[besu-24.12.0.jar:24.12.0]
    at org.hyperledger.besu.cli.BesuCommand.validateOptions(BesuCommand.java:1439) ~[besu-24.12.0.jar:24.12.0]
    at org.hyperledger.besu.cli.BesuCommand.run(BesuCommand.java:971) ~[besu-24.12.0.jar:24.12.0]

Root Cause

The error appears to be caused by missing method definitions in org.hyperledger.besu.ethereum.api.jsonrpc.RpcMethod.java Specifically, DEBUG_ACCOUNT_RANGE("debug_accountRange") and potentially other debug methods are not defined in the RpcMethod enum.

Additional Information

  • Besu Version: 24.12.0
  • All methods attempted are documented in the official Besu documentation
  • Configuration attempted through command-line parameter

Expected Behavior

The debug API methods should be successfully enabled when specified in the --rpc-http-api-method-no-auth parameter, as they are documented in the official Besu documentation.

Steps to Reproduce

  1. Install Besu 24.12.0
  2. Attempt to enable debug API methods using the --rpc-http-api-method-no-auth parameter
  3. Observe the validation error
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant