You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署程序至solana-test-validator时出现交易过期问题

Solana本地验证器v1.11.5部署程序失败:账户分配无法确认交易(余额充足)

问题详情

  • 使用Solana CLI v1.11.15可正常将程序部署至Testnet,但使用v1.11.5版本的solana-test-validator进行本地部署时失败
  • 执行部署命令:
solana --url localhost --commitment confirmed program deploy target/deploy/program.so

返回错误:

Error: Account allocation failed: unable to confirm transaction.
This can happen in situations such as transaction expiration and insufficient
fee-payer funds

  • 已确认账户余额充足,查询命令及结果:
solana --url localhost balance

500000000 SOL

解决方案

1. 统一CLI与本地验证器版本

v1.11.5版本的solana-test-validator和v1.11.15的CLI存在版本兼容性差异,导致交易确认逻辑不匹配。将本地验证器升级至与CLI相同的v1.11.15版本:

solana-install update 1.11.15

升级完成后重启验证器,再重新执行部署命令。

2. 调整commitment参数或检查验证器状态

  • 尝试修改部署时的commitment参数,改用finalized或processed:
solana --url localhost --commitment finalized program deploy target/deploy/program.so

旧版本验证器对commitment的处理逻辑可能与新版本CLI不一致,调整参数可规避该问题。

  • 查看验证器运行日志,确认无异常报错:
solana-test-validator --log

3. 重置本地验证器状态

本地验证器可能存在异常状态,重置后再尝试部署:

solana-test-validator --reset

重置完成后重新启动验证器,再执行部署操作。

4. 确保程序文件与验证器版本兼容

使用v1.11.5版本的CLI重新编译程序,生成适配旧版本验证器的program.so文件,再用同版本验证器部署,避免跨版本编译带来的兼容性问题。

内容的提问来源于stack exchange,提问作者kemga

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 16:18:21