Skip to content

eth_getLogs request returns an error failed to get logs for block. #23875

Closed
@brg8

Description

@brg8

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!

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions