Guides

Sui object locked: как проверить зависшую транзакцию

28 октября 2026 г.
6 мин чтения

Ошибка object locked в Sui не всегда означает ожидание новой эпохи. Проверьте объект, прежние операции и статус выполнения перед повторной отправкой.

Если Sui сообщает object locked, прекратите создавать конкурирующие транзакции и выясните, какой объект и какая его версия затронуты. Резервирование под прежнюю операцию может разрешиться после её завершения. При equivocation объект может оставаться недоступным до следующей эпохи, а устаревшая ссылка на объект или задержка обозревателя требуют другой проверки.

Сначала сохраните полный текст ошибки

Общая сумма SUI в кошельке не показывает, какой вход вызвал сбой. Для операции с объектами может понадобиться конкретная версия монеты или другого принадлежащего адресу объекта. Два действия способны конфликтовать, даже если денег на оба визуально хватает. Поэтому важны digest транзакции, идентификатор объекта, его версия и сообщение целиком, а не только снимок экрана с балансом.

В официальном справочнике ошибок Sui отдельно описаны резервирование объекта другой транзакцией и equivocation до следующей эпохи. Зависшая кнопка подтверждения сама по себе не доказывает ни одно из этих состояний. Приложение могло не отправить запрос, потерять соединение с RPC или подготовить операцию на основе уже устаревших входов.

Что удалось установитьЧто это позволяет проверитьСледующее действие
Объект зарезервирован другой транзакциейПрежняя операция использует ту же версиюРазобраться с её результатом до создания конкурирующей
Сообщение equivocated until the next epochРазделённые резервирования помешали получить кворумДождаться смены эпохи, обновить данные и пересобрать операцию
Ссылка на старую версию объектаДругая операция уже изменила объектПосле проверки прежнего платежа получить актуальное состояние
По digest нет записиНеясен результат отправки или состояние узлаПроверить доверенный источник и сохранить данные попытки
Финализированная запись содержит ошибкуВыполнение завершилось неудачноРазобрать причину, не считать задуманный перевод успешным

Как обычные действия начинают мешать друг другу

Документация версий объектов объясняет: после изменения сохраняется идентификатор объекта, но записывается новая версия. Повтор старого запроса не делает старую версию актуальной. Один и тот же изменяемый вход нельзя независимо использовать дважды в одной версии. Для shared-объектов действуют другие правила планирования: перегруженный объект приложения нельзя автоматически считать заблокированной монетой вашего кошелька.

Возьмём вымышленную монету-объект с условной меткой Cedar и версией 12. В первой вкладке подготовлен перевод с этим входом, во второй — другое действие с той же ссылкой. Доступный общий баланс ещё не означает, что две заготовки согласовали входы. Если первое действие выполнится, второе должно учитывать получившееся состояние, а не продолжать ссылаться на уже использованную версию Cedar.

Причиной конфликта бывает и монета для газа. Пополнение адреса не заменяет входы в ранее подписанной транзакции. При этом актуальная документация address balances описывает оплату газа из баланса адреса без выбора монет-объектов, если режим включён в сети и поддерживается клиентом. Утверждения «любая операция Sui блокирует газовую монету» и «достаточно всегда докинуть SUI» поэтому слишком широкие.

Установите результат первой попытки

  1. Приостановите дополнительные вкладки кошелька и приложения, способные отправлять операции с этого аккаунта. Сохраните первоначальную ошибку и известные digest.
  2. Проверьте сеть в кошельке, обозревателе и реквизитах получателя. Запись тестовой сети не подтверждает платёж в основной.
  3. Проверьте каждую известную транзакцию через доверенный источник данных Sui. Разделяйте отсутствие записи, успешное выполнение и завершённое выполнение с ошибкой.
  4. Посмотрите эффекты и изменения объектов, если источник их показывает. Найдите прежнюю операцию, использовавшую объект из сообщения.
  5. При успешном платеже сопоставьте получателя и сумму, прежде чем платить снова. При неуспехе выбирайте действие по конкретному виду ошибки.

В описании жизненного цикла транзакции финальность отделена от момента появления результата на конкретном узле или в индексе. Даже у финализированной записи нужно прочитать статус выполнения: окончательный результат может быть ошибкой. Отсутствие записи у одного узла, в свою очередь, не доказывает, что запрос вообще не попал в сеть.

Повторная передача той же подписанной транзакции отличается от создания нового платежа. Документация описывает первый вариант как идемпотентный: одну транзакцию нельзя исполнить повторно как второй такой же платёж. Новая заготовка способна иметь другие входы или digest и требует отдельной оценки. Если кнопка «Повторить» не объясняет своё действие, уточните это у поддержки кошелька до многократных нажатий при неизвестном результате первой попытки.

Когда действительно нужно ждать следующей эпохи

Ожидание смены эпохи обосновано, если полное сообщение прямо указывает на equivocation до следующей эпохи. Документация эпох связывает это состояние с конкурирующими операциями над принадлежащим адресу объектом, между которыми разделились резервирования. Это более узкая причина, чем обычный обрыв соединения или резервирование под единственную ещё исполняемую операцию.

Фраза не означает «отсчитать сутки от появления ошибки». Важна ближайшая смена эпохи сети, а оставшееся время зависит от момента возникновения конфликта. После перехода обновите состояние аккаунта и подготовьте операцию с текущими ссылками на объекты. Старая подписанная заготовка не становится автоматически подходящим платежом; срок действия заявки получателя также проверяется отдельно.

Что изменить в работе и что передать поддержке

В обычном кошельке сначала выясните судьбу незавершённого действия, затем запускайте следующее, способное использовать его входы. Разработчику нужно согласовывать отправку между собственными клиентами. Справочник исполнителей Mysten предупреждает о конфликтах, когда другой кошелёк или несколько исполнителей используют монеты управляемого газового пула. Установка дополнительного кошелька сама по себе не решает задачу согласования.

  • Укажите сеть, версию кошелька или приложения, полный текст ошибки, digest при наличии и идентификатор объекта. Опишите порядок действий.
  • Не отправляйте сид-фразу или приватный ключ: для объяснения резервирования объекта они не нужны.
  • Уточните, означает ли рекомендованный повтор передачу прежней подписанной транзакции или подготовку нового платежа.
  • Если платёж связан с обменной заявкой, перед новой подписью проверьте актуальность реквизитов и самой заявки.

Держать контекст актива поможет страница SUI. Если после исправления ошибки планируете обмен без регистрации, заново сопоставьте сеть и текущие инструкции заявки. Блокировка объекта не доказывает зачисление у получателя и не создаёт сама по себе право на возврат. Проверки сервиса рассматриваются отдельно, в том числе обстоятельства, описанные в AML-политике.

Частые вопросы

Что означает Sui equivocation для заблокированного объекта?

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

Почему кошелёк Sui не показывает результат транзакции?

Источник данных мог ещё не получить запись, а сама отправка могла не завершиться. Сохраните digest и проверьте доверенный источник, прежде чем заменять платёж новым.

Sui equivocation означает блокировку всего кошелька?

Сообщение относится к затронутым версиям объектов и не доказывает административную блокировку всех активов аккаунта. Сначала установите конкретный объект и судьбу связанных операций.

страница SUIобмен без регистрацииAML-политике

Источники

Готовы обменять крипту?

Быстрые, прозрачные свопы — регистрация не нужна.

Начать обмен
Sui object locked: как проверить зависшую транзакцию | KOT.CASH