-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Open
Description
Overview
Hello erigon developers.
I'm running a separate Pectra PoS testnet chain for API testing. During testing, I observed discrepancies in the JSON-RPC responses from execution clients—geth, besu, nethermind, reth and erigon. Specifically, when calling debug_getBadBlocks
, erigon will return null
if no bad blocks recently, while other EL clients return []
. Accroding to the spec, the results should be array
.
{"id": 1, "jsonrpc": "2.0", "result": []}
{"id": 1, "jsonrpc": "2.0", "result": []}
{"id": 1, "jsonrpc": "2.0", "result": []}
{"id": 1, "jsonrpc": "2.0", "result": []}
{"id": 1, "jsonrpc": "2.0", "result": null}
I've pushed a PR for this and this is my first PR for erigon, thanks for your attention!
System information
Client versions
- erigon/3.1.0/linux-amd64/go1.24.7
- Nethermind/v1.33.1+cda59e5b/linux-x64/dotnet9.0.8
- besu/v25.8.0/linux-x86_64/openjdk-java-21
- Geth/v1.16.3-stable-d818a9af/linux-amd64/go1.24.6
- reth/v1.7.0-9d56da5/x86_64-unknown-linux-gnu
with
- Prysm/v6.0.4 (linux amd64)
Chain/Network: private Pectra testnet
Expected behaviour
Return empty []
Actual behaviour
Return null
Steps to reproduce the behaviour
curl POST http://127.0.0.1:5508 \
-H "Content-Type: application/json" \
-d '
{
"id": 1,
"jsonrpc": "2.0",
"method": "debug_getBadBlocks",
"params": []
}
'
Metadata
Metadata
Assignees
Labels
No labels