Skip to content

The startup parameter --save-internaltx does not take effect #6217

@lily309

Description

@lily309

Software Versions

OS : Mac OS X
JVM : Amazon.com Inc. 1.8.0_362 x86_64
Git : e811deff938578d8f85f497f9be2c4045d4da8c6
Version : 4.7.7
Code : 18386

Expected behaviour

When I turn on the switch for internal transaction logging by adding the --save-internaltx parameter to the startup parameters, the internal transactions that occur in the transaction are never available through the fullnode http interface.

Here is the test contract I deployed

// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0;

contract A {
    function a() external payable {
        payable(msg.sender).transfer(msg.value);
    }
}

Here are the results of the transaction_info I queried

curl http://127.0.0.1:8090/wallet/gettransactioninfobyid?value=34ba7609907e3432df4d54da787d22f6556ab390a2b454da52380f1e3dbda065

{
"id": "34ba7609907e3432df4d54da787d22f6556ab390a2b454da52380f1e3dbda065",
"fee": 693200,
"blockNumber": 52,
"blockTimeStamp": 1740553053000,
"contractResult": [
""
],
"contract_address": "41b665df62df91aceb92712d4f06443cccbfb88050",
"receipt": {
"energy_fee": 693200,
"energy_usage_total": 6932,
"net_usage": 284,
"result": "SUCCESS"
}
}

Actual behaviour

I should be able to query an internal transaction.

Frequency

Always

Steps to reproduce the behaviour

  1. Start a private chain with the command java -jar FullNode.jar -c config.conf --witness --save-internaltx
  2. Deploy a test contract as described above.
  3. Call the a method of the deployed contract.
  4. Query the transaction execution results through the /wallet/gettransactioninfobyid interface.

Backtrace

None

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions