Replies: 4 comments 9 replies
-
I don't see this transaction on-chain https://escan.live/tx/0x60daafb24c3c573c803065cc9375da05660ce08b76ea2d5139261973740f737e I take another failed tx: https://escan.live/tx/0xda7e3ea4cc8f66c9b0d5ff6a7b043ad75a49071eda330bdddc52662d13ac4fd1 I called it and I got result: curl -s -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionReceipt","params":["0xda7e3ea4cc8f66c9b0d5ff6a7b043ad75a49071eda330bdddc52662d13ac4fd1"],"id":1}' -H "Content-Type:application/json" https://evmos-evm.publicnode.com {
"jsonrpc": "2.0",
"id": 1,
"result": {
"blockHash": "0x92fa7289254c9259015b9991091d2c4d36073312076c6be23c03b45c7b6f694b",
"blockNumber": "0xef6d7d",
"contractAddress": null,
"cumulativeGasUsed": "0x144ff0",
"from": "0x6069be68577b66d8e1e7ab23f7155b016917ae91",
"gasUsed": "0xa27f8",
"logs": [],
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"status": "0x0", // status 0x0 means failed
"to": "0x3b41454cb7858b6d0535e61bae9362af0151cc2d",
"transactionHash": "0xda7e3ea4cc8f66c9b0d5ff6a7b043ad75a49071eda330bdddc52662d13ac4fd1",
"transactionIndex": "0x1",
"type": "0x0"
}
} |
Beta Was this translation helpful? Give feedback.
-
thanks for the quick response! please check this tx - https://escan.live/tx/0xe3791459cbcdd22536ef37cf0cc326ad3998a98d09cfe3dad760d36387bcc2fc
|
Beta Was this translation helpful? Give feedback.
-
I'm not an evmos core team's member but I know the cause of this problem. The detailed reasons can be found in a PR I mentioned #1801 . If there is too much content in RP, let me summarize: all evm type transactions will eventually be converted into a cosmos type transaction for execution, so whether it is successful or failed, there must be a cosmos type transaction on the chain. To query the evm receipt, the cosmos type transactions existing on that chain are recombined into an evm transaction receipt and returned to the user. The problem lies here, the chain will filter the receipt information, and only transactions that meet the conditions will be returned to the user. See this part of the code: Lines 279 to 283 in 31a4384 If this function returns true directly, then you can check the evm transaction receipt. But I don't know why the evmos team filters this. @fedekunze Can you answer this question? @tmcgroul Overall, this is a bug. If I know what you did to trigger this bug(for example, which contract was called and the code of the contract), I can submit a PR to fix it. |
Beta Was this translation helpful? Give feedback.
-
I've found the open source code for your calling contract: https://www.escan.live/address/0x720035b1417f9f9dea4097b578d30c373cd3dd04 and I'll try to fix it. |
Beta Was this translation helpful? Give feedback.
-
Why receipts aren't available for failed transactions? For example:
Other evm-compatible networks (ethereum, binance, etc) response receipts even if transactions are failed.
So my question - is it expected behavior? Will it be fixed in the future or kept as it is?
Beta Was this translation helpful? Give feedback.
All reactions