Skip to content

A transaction that creates a spl mint executes successfully on v2.3.13 but fails on v3.0.13. #9799

@mohanson

Description

@mohanson

Problem

A transaction that creates a spl mint executes successfully on v2.3.13 but fails on v3.0.13. This could potentially lead to consensus errors.

I discovered this while running solana-test-validator; I was preparing to create a test spl and constructed a transaction similar to the following:

{
    "signatures": [
        "XJ8W3T8W1pa5hmPpyMEaSDhk31XFWyVQXEKDruWpqmBzeNHf33sAK6gfaDmPNTZHfB82JAkcuFMgAvug5JyxAjD",
        "5mVXG7JRWcZwTMxnpDXBt9XuaxpryYUz88Qo4dnwjohrNgrynndBxxGZAzVmVxLC4Dv6hUTC5fUqSBSvs4Pcz3mu"
    ],
    "message": {
        "header": [
            2,
            0,
            3
        ],
        "account_keys": [
            "6ASf5EcmmEHTgDJ4X4ZT5vT6iHVJBXPg5AN5YoTCpGWt",
            "CYKevXUNvH7XheTMQ9wM1kh1ZuVHiLS2fdhbCq5bUwx2",
            "11111111111111111111111111111111",
            "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
            "SysvarRent111111111111111111111111111111111"
        ],
        "recent_blockhash": "74VRyjsvYBgFW7GLozf4muonTMSNaVPdic5irpjcQWjM",
        "instructions": [
            {
                "program": 2,
                "account": [
                    0,
                    1
                ],
                "data": "11119puK6U9tFTwFFgNNe5WjfyteL84SeaXZ5a6bmEANUzKn8SgP4HVGCxnqFtc6krocPu"
            },
            {
                "program": 3,
                "account": [
                    1
                ],
                "data": "GC5Ez1CfopED9fRWxYRyzhfy6yd2ssTifXKBMyVjJFwrybFUaek22SLaWXXjJoi3x9PQieWvZSdq9CWpDAYj1JsK5Q"
            },
            {
                "program": 3,
                "account": [
                    1,
                    4
                ],
                "data": "14d66GnDs2SnkKCAjVxeSdzYALqbRvk4VsvLaUdQFX8UwqxHrWExqF2Y9FWcs4RBsssXKT5ygXFY7WSSS6BzFPKmD4C"
            },
            {
                "program": 3,
                "account": [
                    1,
                    0,
                    1,
                    0
                ],
                "data": "2NWUEqvpzrnpdSbLQa3QXmgJRTDm1jnrgH8JrS8tC38MGyKby2gnuuxXuh8Uh4jZ2smqodoHvbCnai3YcczR3mLW987ycEeKT7APu3g9LTGaq4Y2U3dwiddT4BZaeZ2mm26PrFQciNaLa9kNDgq"
            }
        ]
    }
}

The transaction is generated by a script: https://github.com/mohanson/pxsol/blob/master/example/spl.py

$ python example/spl.py --prikey 0x1 --action create --name PXSOL --symbol PXS --uri https://raw.githubusercontent.com/mohanson/pxsol/refs/heads/master/res/pxs.json

I've been using version v2.3.13; but today when I upgraded test-validator to v3.0.13, the transaction threw an error:

Exception: {'code': -32002, 'message': 'Transaction simulation failed: Error processing Instruction 3: Failed to reallocate account data', 'data': {'accounts': None, 'err': {'InstructionError': [3, 'InvalidRealloc']}, 'fee': 10000, 'innerInstructions': None, 'loadedAccountsDataSize': 683976, 'loadedAddresses': None, 'logs': ['Program 1111111111111111111111111111111111 invoke [1]', 'Program 11111111111111111111111111111111 success', 'Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [1]', 'Program log: MetadataPointerInstruction::Initialize', 'Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 884 of 602850 compute units', 'Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success', 'Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [1]', 'Program log: Instruction: InitializeMint', 'Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 2023 of 601966 compute units', 'Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb success', 'Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb invoke [1]', 'Program log: TokenMetadataInstruction: Initialize', 'Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb consumed 3536 of 599943 compute units', 'Program TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb failed: Failed to reallocate account data'], 'postBalances': None, 'postTokenBalances': None, 'preBalances': None, 'preTokenBalances': None, 'replacementBlockhash': None, 'returnData': None, 'unitsConsumed': 603000}}

Proposed Solution

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions