Блокировка параллельных транзакций, вызывающая ошибку замены или слишком низкую ошибку - PullRequest
0 голосов
/ 29 сентября 2019

Я хочу выполнить несколько транзакций с одного аккаунта за раз, в основном вызывая разные смарт-контракты, используя golang (не geth, используя привязку go для взаимодействия смарт-контрактов).когда я выполняю эту транзакцию, возникает ошибка «Ошибка замены транзакции» или «Nonce too low», но я не хочу, чтобы их заменяли, вместо этого следует выполнять каждую транзакцию.

Что уже пробовалось: 1) Периодическое увеличение счетчика для увеличения одноразового номера для каждой транзакции и связывания его с поющим сообщением.2 Получение последнего ожидающего одноразового номера и использование его для следующей транзакции (но это не помогает, поскольку, если нам нужно несколько trasnaction, каждый из которых вызывает 3 разных смарт-контракта за раз, в конечном итоге оказывается только в одной из двух вышеуказанных ошибок).

ссылка: https://github.com/ethereum/go-ethereum/wiki/Native-DApps:-Go-bindings-to-Ethereum-contracts (процедура используется для взаимодействия с Smart Contarct)

...