Closed
Description
System information
Geth version: v1.10.11
OS & Version: Linux
Commit hash : N/A
Expected behaviour
I expect the following request to return a non-error result.
curl localhost:8545 -X POST -H "Content-Type: application/json" -d '{"id": "someid","method": "eth_getLogs","jsonrpc": "2.0","params": [ { "fromBlock": "0xb45a", "toBlock": "0xb45a" } ]}'
Actual behaviour
It returns an error.
{"jsonrpc":"2.0","id":"someid","error":{"code":-32000,"message":"failed to get logs for block"}}
Steps to reproduce the behaviour
Run the provided curl against a geth node. Some bullets that might help:
- I have reproduced this on 10 separate archive nodes.
- Full nodes are hit or miss, some of them respond correctly.
- Parity/OE and Erigon nodes respond correctly.
- When I get the error, this appears in the geth logs:
ERROR[11-08|20:15:32.914] Invalid receipt array RLP hash=4e3a37..5a1bdd err="rlp: expected input list for []*types.LogForStorage, decoding into ([]*rawdb.receiptLogs)[0](rawdb.storedReceiptRLP).Logs"
- If I add an address to the filters then I get a valid response:
curl localhost:8545 -X POST -H "Content-Type: application/json" -d '{"id": "someid","method": "eth_getLogs","jsonrpc": "2.0","params": [ { "fromBlock": "0xb45a", "toBlock": "0xb45a", "address": "0x1ad1C9CE861a072f843Eab9c070A52e295ad94B5" } ]}'
{"jsonrpc":"2.0","id":"someid","result":[]}
Thank you in advance for your help!