現象
MetaplexのmintNftを実行すると、「custom program error: 0x26」エラーが出力される。
% ts-node mint_nft.ts
Transaction simulation failed: Error processing Instruction 2: custom program error: 0x26
Program 11111111111111111111111111111111 invoke [1]
Program 11111111111111111111111111111111 success
Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [1]
Program log: Instruction: InitializeMint
Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 2457 of 200000 compute units
Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success
Program metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s invoke [1]
Program log: (Deprecated as of 1.1.0) Instruction: Create Metadata Accounts
Program log: Transfer 5616720 lamports to the new account
Program 11111111111111111111111111111111 invoke [2]
Program 11111111111111111111111111111111 success
Program log: Allocate space for the account
Program 11111111111111111111111111111111 invoke [2]
Program 11111111111111111111111111111111 success
Program log: Assign the account to the owning program
Program 11111111111111111111111111111111 invoke [2]
Program 11111111111111111111111111111111 success
Program log: If using a creators array, you must be one of the creators listed
Program metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s consumed 20538 of 200000 compute units
Program metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s failed: custom program error: 0x26
/Users/user/Documents/Programming/Blockchain/solana-anchor-react-minimal-example/js/metaplex/ts/node_modules/@solana/web3.js/src/connection.ts:4057
throw new SendTransactionError(
^
SendTransactionError: failed to send transaction: Transaction simulation failed: Error processing Instruction 2: custom program error: 0x26
at Connection.sendEncodedTransaction (/Users/user/Documents/Programming/Blockchain/solana-anchor-react-minimal-example/js/metaplex/ts/node_modules/@solana/web3.js/src/connection.ts:4057:13)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async Connection.sendRawTransaction (/Users/user/Documents/Programming/Blockchain/solana-anchor-react-minimal-example/js/metaplex/ts/node_modules/@solana/web3.js/src/connection.ts:4014:20) {
logs: [
'Program 11111111111111111111111111111111 invoke [1]',
'Program 11111111111111111111111111111111 success',
'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [1]',
'Program log: Instruction: InitializeMint',
'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 2457 of 200000 compute units',
'Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success',
'Program metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s invoke [1]',
'Program log: (Deprecated as of 1.1.0) Instruction: Create Metadata Accounts',
'Program log: Transfer 5616720 lamports to the new account',
'Program 11111111111111111111111111111111 invoke [2]',
'Program 11111111111111111111111111111111 success',
'Program log: Allocate space for the account',
'Program 11111111111111111111111111111111 invoke [2]',
'Program 11111111111111111111111111111111 success',
'Program log: Assign the account to the owning program',
'Program 11111111111111111111111111111111 invoke [2]',
'Program 11111111111111111111111111111111 success',
'Program log: If using a creators array, you must be one of the creators listed',
'Program metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s consumed 20538 of 200000 compute units',
'Program metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s failed: custom program error: 0x26'
]
}
原因
Creatorsのアドレスが誤り。
Solana Cookbook のMint the NFTセクションに注意事項として記載されているとおり。
You cannot mint an NFT with a different creator that your wallet. If you run into creator issues, make sure your metadata lists you as the creator.
ウォレットとは別のクリエーターでNFTを作成することはできません。作成者の問題が発生した場合は、メタデータに作成者としてリストされていることを確認してください。
また、実行時のログメッセージにも、その旨で記載があった。
If using a creators array, you must be one of the creators listed'
クリエーター配列を使用する場合は、リストされているクリエーターの1人である必要があります。
対応
ArweaveにアップロードしたMetadataのcreatorsを自分のアドレスに変更する。
たとえば、自分のアドレスが「HXtBm8XZbxaTt41uqaKhwUAa6Z1aPyvJdsZVENiWsetg」だったとする。
もし、 Arweave Metadataサンプル をアップロードしたい場合、creatorsのaddressを上記アドレスに変更する必要がある。
具体的には以下のような書き換えになる。
"creators": [
{
"address": "HXtBm8XZbxaTt41uqaKhwUAa6Z1aPyvJdsZVENiWsetg",
"verified": true,
"share": 100
}
]