交易在MetaMask上一直等待
最后更新于
交易一直处于等待状态无法被网络打包一般有三种原因
交易的Nonce不是下一个应该被打包的Nonce
交易的Gas Price为0
交易的Gas Limit不足
您可以根据下述步骤检查您遇到的是哪个问题
打开https://scan.genechain.io,在右上角查询框输入您的地址查询您的交易历史
找到最新一个您发送的交易,点击交易哈希查看这个交易的详细信息,请注意:确保图中1处是你的帐号地址,因为其他人给你发送的交易也会出现在这里。然后点击图中2处即可查询交易详细信息
记录这个交易的Nonce值,假设为N
,下一个被打包的交易的Nonce值只能比这个值大1
打开MetaMask查询交易历史,桌面版MetaMask可以点击活动
查看队列中的交易,移动版MetaMask需要点击菜单中的交易历史记录
点击最靠上的交易,这通常是MetaMask中被阻塞的第一个交易
检查这个交易的Nonce值,假设为M
如果发现阻塞的交易Nonce(M
)和最后一个被打包的交易Nonce(N
)不连续,即M≠N+1
,则需要自定义Nonce或重置Nonce后重新发送Nonce为N+1
的交易,建议先尝试自定义Nonce,如果无法解决问题再尝试重置Nonce。
如果Nonce是连续的,即M=N+1
,可继续进行Gas Price和Gas Limit的检查
建议先检查Gas Price(燃料价格),此数为0时会无法被网络打包,请参考加速或取消交易,调高Gas Price来让网络打包此交易。
如果Gas Price不为0,则通常原因是Gas Limit太低,导致网络无法打包交易。请参考加速或取消交易,调高Gas Limit的同时调高Gas Price来让网络打包此交易。
点击待处理交易下方的加速
或取消
按钮
在加速或取消时点击高级
增加Gas Price(每次增加1即可)和Gas Limit(每次建议增加0.5倍以上)尝试让网络能够正常打包这笔交易。
注意:移动端MetaMask可以点击加速
和取消
,但并不可以在加速或取消时自定义Gas Price,因此很有可能不成功,此时建议自定义Nonce后重新发送交易。
在设置中打开自定义Nonce后即可手工填写一个交易的Nonce,具体步骤如下
打开自定义交易Nonce的开关后即可在发送交易时填入需要的Nonce,此时执行你需要做的操作,在发送交易时填入下一个Nonce,务必记得调高Gas Price(需要比之前在网络是阻塞住的交易的Gas Price大1即可,否则会遇到replacement transaction underpriced
错误)和Gas Limit(每次建议增加0.5倍以上,否则可能还会遇到阻塞问题)
如果无法加速或取消或仍然得不到打包,在这种情况下,您可以在设置 -> 高级
中单击重设帐户
即可重置Nonce。此操作将重置您的随机数并清除您的交易历史记录,但不会更改帐户中的余额或要求您重新输入助记词。
如果您使用移动端MetaMask遇到重置Nonce无效的情况,建议使用桌面端尝试或重新安装移动端MetaMask。但请记得提前保存好您的私钥或助记词。
如果调高Gas Price后或未调整时遇到CALL_EXCEPTION错误,通常是因为MetaMask在预估Gas Limit时比实际执行所需要的Gas低,导致执行不成功。此时,需要调高Gas Limit可以帮助解决问题。
重置Nonce值后即可重新发送交易覆盖网络上在排队的同Nonce的交易,此时请记得调高Gas Price以覆盖网络上在排队的交易,避免因新交易的Gas Price不比旧交易高而遇到REPLACEMENT_UNDERPRICED无法覆盖之前旧交易的错误。