Skip to content

Wrong Mass Transfer transaction ID in the "/transactions/address" endpoint #106

@msmolyakov

Description

@msmolyakov

If you request endpoint /transactions/address/ and read MassTransfer transaction in it, the id will differ from the one specified in JSON.

The reason is that in the endpoint in MassTransfer transaction not all recipients are shown, but only the address to which the request was made. By design, the library waves-transactions-java ignores the id field in JSON and calculates ID on its own. So there's no way to correctly calculate the ID.

For example, there's MassTransfer with id FdEdj5SrJV5qNQT6fnewhguXh77BrHc2xAnQArT6maXr:
https://nodes.wavesnodes.com/transactions/address/3PL9HcwsQEDDekmxxhQJGfVMUKBjKH5LbLH/limit/1?after=AiLvMDnj7G3HSnjyWZphWzLAKCqMa5MdQXFFRWsrAEDo

But WavesJ 1.2.3 returns id 3tVzcELheCV4PKBXK7HFeHmKPrWEfLvhYtapr32MSScf:

Node node = new Node(Profile.MAINNET);

Address address = Address.as("3PL9HcwsQEDDekmxxhQJGfVMUKBjKH5LbLH");
Id after = Id.as("AiLvMDnj7G3HSnjyWZphWzLAKCqMa5MdQXFFRWsrAEDo");

List<TransactionInfo> transactionsByAddress = node.getTransactionsByAddress(address, 1, after);

System.out.println( transactionsByAddress.get(0).tx().id() );

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions