【问题标题】:When trying to mint tokens using spl-token mint, and trying to mint 1,000,000,000,000 tokens, it only mints 18446744073.709551615 tokens当尝试使用 spl-token mint 铸造代币并尝试铸造 1,000,000,000,000 个代币时,它只会铸造 18446744073.709551615 个代币
【发布时间】:2022-01-22 17:49:13
【问题描述】:

创建令牌: ~$spl-token create-token Creating token 4PgB5jPM9a5Js5FT6zPJHD8rcDogcnbSSLS1d5Mny9n1 Signature: bmHzFBvFU2vq7AeLHuQuYsgDEPZRXV9mSDfK7RjPU7CwkyQoPEZLzrsCDaAJWB32bffmKsemjEshhrataAr2tQ8

检查供应: ~$spl-token supply 4PgB5jPM9a5Js5FT6zPJHD8rcDogcnbSSLS1d5Mny9n1 0

铸币: ~$spl-token mint 4PgB5jPM9a5Js5FT6zPJHD8rcDogcnbSSLS1d5Mny9n1 1000000000000 Minting 1000000000000 tokens Token: 4PgB5jPM9a5Js5FT6zPJHD8rcDogcnbSSLS1d5Mny9n1 Recipient: 85vRuzFU2LA2KQwpKRFF6TAwJVfJevT4GWAYVpGdfZ7U Signature: 3HDX6mRB1WBqpeSyYTwAfbobiBw8XdPa3nDTpbvSvH2cZFFMKfT8wLNV4rSHRRsWAsoDbuXULr5h94xQ8a9ZmmKk

检查硬币供应量: ~$ spl-token balance 4PgB5jPM9a5Js5FT6zPJHD8rcDogcnbSSLS1d5Mny9n1 18446744073.709551615

如果我尝试添加硬币来弥补丢失的硬币,我会得到以下信息:

添加硬币时出错:

~$ spl-token mint 4PgB5jPM9a5Js5FT6zPJHD8rcDogcnbSSLS1d5Mny9n1 100 Minting 100 tokens Token: 4PgB5jPM9a5Js5FT6zPJHD8rcDogcnbSSLS1d5Mny9n1 Recipient: 4rqoTZ2JTvdDzY5i4X73ZnGQjjPkNRpRfaByZ1anWgBD RPC response error -32002: Transaction simulation failed: Error processing Instruction 0: custom program error: 0xe [5 log messages]

我一直遵循此页面上的说明:https://spl.solana.com/token。 我在任何地方都找不到有关此的任何信息,更不用说要查看的任何日志文件了。 我很确定我错过了什么,有人吗?

【问题讨论】:

    标签: solana solana-cli


    【解决方案1】:

    spl-token 程序中的代币供应由u64 给出:https://github.com/solana-labs/solana-program-library/blob/28d0aa775949869a4390dece7341fbb3daeddb5d/token/program/src/state.rs#L22,这意味着最大可能的代币数量为18446744073709551615。如果您在令牌中设置 9 位小数,就像您所做的那样,这意味着可能的最大令牌数是 u64::MAX / 1_000_000_00018446744073.709551615

    如果您需要更多数量的硬币,则必须创建一个小数位数更少的新铸币厂。

    【讨论】:

    • 非常感谢乔恩!终于想通了!我不得不关闭所有帐户并使用所需的小数创建令牌。在那之后,一切都很容易完成!谢谢一百万!
    猜你喜欢
    • 1970-01-01
    • 2022-06-27
    • 1970-01-01
    • 2022-07-01
    • 2022-01-19
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    • 2022-12-18
    相关资源
    最近更新 更多