1

I send this command to my geth (I'm sure anyone's Geth would return the same):

curl host:8545 -X POST --header 'Content-type: application/json' --data '{"jsonrpc":"2.0", "method":"debug_traceTransaction", "params":["0x72c2f85bde52b310436ab52159c9a2ad0762d63cb66061a1605ff6295bc96b67", {"tracer": "callTracer", "timeout": "20m"}], "id":1}'

This returns the following traces:

{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "type": "CALL",
        "from": "0x741b513c8508e3119174eb403315ea96d3dccf67",
        "to": "0xf058241b1fd6bc0bfb01ebdacb19a71a8345f22f",
        "value": "0x0",
        "gas": "0x36238",
        "gasUsed": "0x64e9",
        "input": "0x72262699000000000000000000000000267be1c1d684f78cb4f6a176c4911b741e4ffdc00000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000015000000000000000000000000000000000000000000000000000000000000001cc711a750a8e9caa2323596970fb48c6e15fe074521e2a962f000f82b95679381511fc6af1ab71303bdfc2a7e6f433b8e380a6f9a7d0889d4c686a7a764e202690000000000000000000000000000000000000000000000000000000000000000",
        "output": "0x0000000000000000000000000000000000000000000000000000000000000000",
        "time": "18.381861ms",
        "calls": [
            {
                "type": "CALL",
                "from": "0xf058241b1fd6bc0bfb01ebdacb19a71a8345f22f",
                "to": "0xf058241b1fd6bc0bfb01ebdacb19a71a8345f22f",
                "value": "0x0",
                "gas": "0x3215e",
                "gasUsed": "0x304e",
                "input": "0xd7f31eb9000000000000000000000000267be1c1d684f78cb4f6a176c4911b741e4ffdc00000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000",
                "output": "0x0000000000000000000000000000000000000000000000000000000000000000",
                "calls": [
                    {
                        "type": "CALL",
                        "from": "0xf058241b1fd6bc0bfb01ebdacb19a71a8345f22f",
                        "to": "0xf3da44e64b301ea8aceff247f0eefd6bef4bb14a",
                        "value": "0x0",
                        "gas": "0x30660",
                        "gasUsed": "0x2118",
                        "input": "0xe04f31e9000000000000000000000000267be1c1d684f78cb4f6a176c4911b741e4ffdc00000000000000000000000000000000000000000000000056bc75e2d63100000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
                        "output": "0x0000000000000000000000000000000000000000000000000000000000000000",
                        "calls": [
                            {
                                "type": "CALL",
                                "from": "0xf3da44e64b301ea8aceff247f0eefd6bef4bb14a",
                                "to": "0x267be1c1d684f78cb4f6a176c4911b741e4ffdc0",
                                "value": "0x56bc75e2d63100000",
                                "input": "0x"
                            }
                        ]
                    }
                ]
            }
        ]
    }
}

Look at the last call:

"type": "CALL",
"from": "0xf3da44e64b301ea8aceff247f0eefd6bef4bb14a",
"to": "0x267be1c1d684f78cb4f6a176c4911b741e4ffdc0",
"value": "0x56bc75e2d63100000",
"input": "0x"

It sends 100 ETH from 0xf3da44e64b301ea8aceff247f0eefd6bef4bb14a to 0x267be1c1d684f78cb4f6a176c4911b741e4ffdc0. However neither Etherscan nor Geth know about this balance change. Etherscan shows only 10 transactions for 0xf3da44e64b301ea8aceff247f0eefd6bef4bb14a, and sending 100 ETH is not among them. It simply could not have spent 100 ETH as it has been populated by 0.01 ETH and then received 0.004 ETH:

https://etherscan.io/address/0xf3da44e64b301ea8aceff247f0eefd6bef4bb14a

https://etherscan.io/address/0xf3da44e64b301ea8aceff247f0eefd6bef4bb14a#internaltx

The question is how do I differentiate such call from succeeded one in Geth response to debug_traceTransaction?

1
  • I think Geth may be reporting the call due to some bug. I suspect Parity won't report it. If anyone has fully synced Parity, can you please run: '{"jsonrpc": "2.0", "id": 1, "method": "trace_transaction", "params": ["0x72c2f85bde52b310436ab52159c9a2ad0762d63cb66061a1605ff6295bc96b67"]} – DimaA6_ABC Mar 5 '20 at 8:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.