forked from solana-labs/solana
-
Notifications
You must be signed in to change notification settings - Fork 878
Open
Labels
Description
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.jsonI'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}}