sei-chain icon indicating copy to clipboard operation
sei-chain copied to clipboard

[BUG] eth_getBlockReceipts errors consistently on certain blocks

Open kunalmodi opened this issue 6 months ago • 0 comments

Chain ID pacific-1

Describe the bug EVM RPC method eth_getBlockReceipts consistently throws errors on certain blocks.

Error:

{"jsonrpc":"2.0","id":1,"error":{"code":-32000,"message":"failed to find transaction in block"}}

This happens on both the Sei RPC and the QuickNode one, which makes me think it's an issue in the RPC implementation itself.

To Reproduce Block 94407414 (0x5A08AF6)

First, load the block:

curl --location 'https://evm-rpc.sei-apis.com' \
--header 'Content-Type: application/json' \
--data '{"method":"eth_getBlockByNumber","params":["0x5A08AF6", true],"id":1,"jsonrpc":"2.0"}'

See that this succeeds, and returns 5 transactions

Next, load the block receipts

curl --location 'https://evm-rpc.sei-apis.com' \
--header 'Content-Type: application/json' \
--data '{"method":"eth_getBlockReceipts","params":["0x5A08AF6"],"id":1,"jsonrpc":"2.0"}'

See that this returns an error:

{"jsonrpc":"2.0","id":1,"error":{"code":-32000,"message":"failed to find transaction in block"}}

Third, see that the individual transaction receipt calls all return successfully:

curl --location 'https://evm-rpc.sei-apis.com' \
--header 'Content-Type: application/json' \
--data '{"method":"eth_getTransactionReceipt","params":["0x4c9500d2729fb34bb7c9e8db005ca92c50ba59e87c764d85fe0d057ac7d3f777"],"id":1,"jsonrpc":"2.0"}'

curl --location 'https://evm-rpc.sei-apis.com' \
--header 'Content-Type: application/json' \
--data '{"method":"eth_getTransactionReceipt","params":["0x217aff2703e5d9854afb91664e708c732923aced63695279c7402edf0e1b8edf"],"id":1,"jsonrpc":"2.0"}'

curl --location 'https://evm-rpc.sei-apis.com' \
--header 'Content-Type: application/json' \
--data '{"method":"eth_getTransactionReceipt","params":["0x7aac578ad5a026b1fb2eb86159f0e2513939c6870552d39eb1c9a07a5dce74f7"],"id":1,"jsonrpc":"2.0"}'

curl --location 'https://evm-rpc.sei-apis.com' \
--header 'Content-Type: application/json' \
--data '{"method":"eth_getTransactionReceipt","params":["0x0a7578f9e4ceb9a86e6f463c014d1a3dfb2b818c484f40df5f687953e0c2d4f7"],"id":1,"jsonrpc":"2.0"}'

curl --location 'https://evm-rpc.sei-apis.com' \
--header 'Content-Type: application/json' \
--data '{"method":"eth_getTransactionReceipt","params":["0xe9e21ce6d12f99cbdb4d6e7be3fdcbeb68d1d10289b2eacec1a0a84b3b42c04c"],"id":1,"jsonrpc":"2.0"}'

Expected behavior

I would expect eth_getBlockReceipts to return the concatenated input of the individual 5 eth_getTransactionReceipt calls.

kunalmodi avatar Aug 09 '24 02:08 kunalmodi