I apologize if this is the wrong place to reach out, we're not sure where the best place to report this is. I work for Goldsky, we do hosted indexing, and several of our customers rely on Hedera RPC information.
Our indexers are getting hard locked since the latest upgrade, as we see blocks which have the following pattern:
- we get a block with
eth_getBlockByNumber/Hash and this returns a list of transactions.
- we cann
eth_getTransactionReceipt for the transactions, and check the block number they reference.
- this comparison is off, the transaction appears in two blocks on chain which should not be possible.
Example block/txn:
Get block 0x5be3015
❯ curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["0x5be3015", false],"id":1}' 'https://mainnet.hashio.io/api'
{"result":{"timestamp":"0x6a2e5632","difficulty":"0x0","extraData":"0x","gasLimit":"0x8f0d180","baseFeePerGas":"0xf478e08400","gasUsed":"0x0","logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","miner":"0x0000000000000000000000000000000000000000","mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000","nonce":"0x0000000000000000","receiptsRoot":"0xd4d5eaa637aa85294267684de9b2a1964f38344e37f276e21f3344a56ee86821","sha3Uncles":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","size":"0x9a1","stateRoot":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","totalDifficulty":"0x0","transactions":["0x64f93c99d3575ed3e5f9e7a154b6ae6b6016ebba0c020083fbef97d8f1bf0a1f","0x9018e52c7e444727ea3afb1b35ff0daae0c9de6259b66d10c40802ecdd071cd2"],"transactionsRoot":"0x88172015d45dee764db5fc4a5342f52c7b82a0633b59be40f4b090be4c73a4be","uncles":[],"withdrawals":[],"withdrawalsRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","number":"0x5be3015","hash":"0x88172015d45dee764db5fc4a5342f52c7b82a0633b59be40f4b090be4c73a4be","parentHash":"0x421d6d8b549e38621c66ca5eb98697a22a3f04992bc5780126a84b909f0e3fe9"},"jsonrpc":"2.0","id":1}
get transaction 0x64f93c99d3575ed3e5f9e7a154b6ae6b6016ebba0c020083fbef97d8f1bf0a1f
❯ curl -X POST -H "Content-Type: application/json" --data '{"method":"eth_getTransactionReceipt","params":["0x64f93c99d3575ed3e5f9e7a154b6ae6b6016ebba0c020083fbef97d8f1bf0a1f"],"id":1,"jsonrpc":"2.0"}' 'https://mainnet.hashio.io/api'
{"result":{"blockHash":"0x24ba1da797e275957c0779415e8e6f063149b584d563f286d4dcedaacb4b3a81","blockNumber":"0x5bed0ac","from":"0xdc3a02aa93f0b22f5a6d5e459ac02a6d0a0a9717","to":"0x00000000000000000000000000000000007872cb","cumulativeGasUsed":"0x0","gasUsed":"0x0","contractAddress":"0x00000000000000000000000000000000007872cb","logs":[],"logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","transactionHash":"0x64f93c99d3575ed3e5f9e7a154b6ae6b6016ebba0c020083fbef97d8f1bf0a1f","transactionIndex":"0x1","effectiveGasPrice":"0xf478e08400","root":"0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421","status":"0x0","type":"0x2","revertReason":"0x494e53554646494349454e545f54585f464545"},"jsonrpc":"2.0","id":1}
Note it returns the block number it is on as 0x5bed0ac which is different from the block that returned the transaction, of course, block 0x5bed0ac also returns this transaction hash which is where the inconsistencies break indexing.
Apologies if this is the wrong place to post this, feel free to close, or point me in the right direction if you are able.
I apologize if this is the wrong place to reach out, we're not sure where the best place to report this is. I work for Goldsky, we do hosted indexing, and several of our customers rely on Hedera RPC information.
Our indexers are getting hard locked since the latest upgrade, as we see blocks which have the following pattern:
eth_getBlockByNumber/Hashand this returns a list of transactions.eth_getTransactionReceiptfor the transactions, and check the block number they reference.Example block/txn:
Get block
0x5be3015get transaction
0x64f93c99d3575ed3e5f9e7a154b6ae6b6016ebba0c020083fbef97d8f1bf0a1fNote it returns the block number it is on as
0x5bed0acwhich is different from the block that returned the transaction, of course, block0x5bed0acalso returns this transaction hash which is where the inconsistencies break indexing.Apologies if this is the wrong place to post this, feel free to close, or point me in the right direction if you are able.