Skip to main content

Как ускорить или отменить ожидающую транзакцию

Does this article need to be translated?

info

Have you tried MetaMask Activity?

MetaMask Activity is a new tool that can analyze your transactions and automatically suggest possible resolutions, and it has a built-in function dedicated to pending transactions. Why not try it out? See here for more information.

Когда вы отправляете транзакцию в Ethereum или совместимую сеть, часть платы за газ является предложением для сети обработать вашу транзакцию быстрее— это элемент еще называется платой за приоритет.

Хотя MetaMask поможет вам с расчетом общей платы за газ, при которой ваша транзакция, скорее всего, будет принята, выполнения транзакции, возможно, придется ждать долго, если она отправляется с низкой платой за газ. Чтобы узнать, с какой ценой на газ транзакция будет завершена в разумные сроки, обратитесь к таким источникам, как газ-трекер Etherscan, или к аналогичному трекеру для любой сети, которую вы используете.

Кроме того, иногда что-то идет не так, и транзакция просто зависает или находится в состоянии ожидания в течение очень долгого времени.

Независимо от того, что привело к этому, есть несколько разных способов решения проблемы.

Прежде чем предпринимать какие-либо действия, первым делом следует выйти и полностью закрыть браузер, снова открыть его и разблокировать MetaMask (в случае с мобильным приложением просто закройте приложение и повторно откройте его). Если это не решит проблему, выполните следующие действия:

Ускорение транзакции

MetaMask ускоряет транзакцию

Попробуйте один из следующих вариантов:

  • Подождите, пока сеть не будет готова обрабатывать транзакции по вашей цене.
  • Если вы еще этого не сделали, нажмите кнопку с надписью «Ускорить». Это позволит повторно отправить ту же транзакцию, но с более высокой платой за газ, что должно ускорить ее обработку. Поскольку этот процесс повторно использует тот же одноразовый код, что и в оригинальной транзакции, платить за газ дважды не нужно.

Имейте в виду, что ускорение транзакции увеличит сумму, которую вы тратите на транзакцию.

Отмена транзакции

Способ 1. Отмена в приложении

Если вы еще этого не сделали, для отмены транзакции просто выберите «Отменить», как показано на скриншоте выше. Обратите внимание, отмена может быть выполнена, если транзакция все еще находится в состоянии ожидания в сети. Транзакции, которые уже были подтверждены, не могут быть обращены вспять.

Если у вас включен расширенный интерфейс управления газом, вам также необходимо включить «Настроить nonce транзакции».

Способ 2. Пользовательский одноразовый код

note

To make the custom nonce box visible, you need to turn off the Smart Transactions feature. You can do this by going to "Advanced Settings" and toggling the feature off. After clearing the pending transaction, you can easily re-enable Smart Transactions by toggling it back on.

Этот процесс включает в себя отправку новой транзакции с тем же одноразовым кодом (идентификационным номером каждой транзакции, название которого образовано из фразы «number only used once» (одноразовое случайное число)). Транзакция может не иметь никакой ценности, например, вы можете отправить 0 ETH. Важно, чтобы вы заплатили достаточно за газ, чтобы сеть рассматривала вашу транзакцию в качестве приоритетной.

При использовании этого способа вам нужно будет начинать с транзакции, которая дольше всего ожидает подтверждения в очереди и которую вы хотите отменить. Например, вы не можете попытаться отменить транзакцию с одноразовым кодом 10 до отмены транзакции с одноразовым кодом 9.

Note also that you may be able to cancel multiple transactions at once if they have the same nonce. Since a nonce—by definition—can only be used once, cancelling one of them will cancel all that have the same nonce.

Скриншоты ниже были сделаны в разное время, поэтому показанные в них суммы платы за газ могут отличаться даже от шага к шагу. Пусть это вас не смущает! Когда вы делаете это сами, MetaMask будет автоматически обновляться в режиме реального времени, чтобы показывать рыночные курсы.

  1. In advanced settings, turn on Customize transaction nonce. You'll need this turned on so you can send a replacement transaction (using the same nonce). Find out how to locate a transaction's nonce here.

Настройки одноразового кода для кастомизации транзакции MetaMask

  1. Отправка новой транзакции. Новую транзакцию отправьте СЕБЕ, т.е. на свой публичный адрес MetaMask. Укажите в поле «Пользовательский одноразовый код» тот же код, что и в транзакции, которая все еще находится в ожидающем статусе:

Metamask_custom_transaction_nonce_Extension.png

  1. Next to the estimated fee on the transaction confirmation screen, you'll see a pencil icon to edit the fee. Click the edit icon and then select 'Advanced' at the bottom:

В настоящее время в расширении браузера MetaMask доступна экспериментальная функция под названием Расширенный интерфейс управления комиссией за газ (не путать с расширенным контролем газа). Эти шаги можно выполнить независимо от того, включена ли эта функция, но имейте в виду, что они будут выглядеть по-разному. В следующих шагах не используется расширенный интерфейс управления газом. Имейте в виду:

Чтобы убедиться, что ваш запрос на отмену был принят в приоритетном порядке и раньше оригинала, вам надо заплатить за газ больше. На этом экране выполните следующие инструкции:

  • Установите свой лимит газа сравнимый или немного выше, чем в первоначальной транзакции.
  • Установите максимальную плату за приоритет по крайней мере на 10% выше (в гвей), чем плата за газ первоначальной (ожидающей) транзакции (например, если у этой транзакция плата за газ была 30 гвей, установите максимальную плату за приоритет для новой транзакции для целей замены/отмены в размере 33–35 гвей).
  • Убедитесь, что ваша максимальная плата как минимум на 30% выше, чем максимальная комиссия транзакции, которую вы заменяете. Например, если ваша предыдущая плата была 150 гвей, на этот раз выберите сумму около 200 гвей.

Посетите газ-трекер такой, как газ-трекер Etherscan, для получения рекомендаций по максимальным комиссиям.