gpt4 book ai didi

web3 - RSK 中出现 "transaction nonce too high"错误怎么办?

转载 作者:行者123 更新时间:2023-12-03 16:19:38 28 4
gpt4 key购买 nike

我在 RSK 上部署了一个分散的应用程序,并且已经工作了几个月。使用公共(public)节点一切正常,
但是很少,我们开始得到一个完全随机的错误:

Unknown Error: { 
"jsonrpc": "2.0",
"id": 2978041344968143,
"error": {
"code": -32010,
"message": "transaction nonce too high"
}
}
没有关于“太高”随机数的信息,但有很多关于“太慢”的线程。我正在使用 web3.Contract.method.send() .

最佳答案

同一地址在交易池中可以拥有的交易数量是有限制的。
此限制为 4 对于 RSK,
并在 TxValidatorNonceRangeValidator 中定义
内rskj 代码库:

BigInteger maxNumberOfTxsPerAddress = BigInteger.valueOf(4);
请注意,以太坊也有类似的限制,
但在 中配置的限制格思 10 .
因此,如果我们已经发送了 4 笔尚未被挖掘的交易,并且在下一个区 block 被挖掘之前发送了第 5 笔交易,则会收到 nonce 太高的错误。如果一个区 block 被开采并且它拥有所有 4 个交易,那么我们将能够为下一个区 block 添加最多 4 个交易。
解决方法
(1) 从一个地址发送不超过 4 个交易,直到有一个新 block 。
(2) 聚合所有调用,然后使用一次性执行它们的合约。
这方面的一个例子见于
RNS Batch Client ExecuteRegistrations .

关于web3 - RSK 中出现 "transaction nonce too high"错误怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65775136/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com