На популярному в Тайвані блокчейні Sui, який має значну репутацію, у ніч з 14 числа за тайванським часом сталася зупинка мережі. Офіційні представники повідомили, що основна мережа тимчасово не могла обробляти транзакції належним чином, а деякі децентралізовані додатки (dApp) та сервіси блок-оглядачів, включаючи Slush, SuiScan та інші, могли стикатися з тимчасовими проблемами з підключенням або затримками транзакцій. Команда Sui Core негайно втрутилася у вирішення проблеми та пообіцяла оприлюднити подальший прогрес після з’ясування причин.
Sui зазнав зупинки мережі
У ніч з 14 числа за тайванським часом основна мережа Sui зазнала зупинки мережі (network stall). Офіційно повідомляється, що мережа тимчасово не могла обробляти транзакції, а деякі децентралізовані додатки (dApp) та сервіси блок-оглядачів, включаючи Slush, SuiScan та інші, могли стикатися з тимчасовими проблемами з підключенням або затримками транзакцій. Команда Sui Core вже втрутилася у вирішення проблеми і пообіцяла оприлюднити подальший прогрес після з’ясування причин.
Варто зазначити, що це не перший випадок повної зупинки основної мережі Sui. Успадкувавши події 21 листопада 2024 року, коли основна мережа Sui у північний ранок приблизно з 1:15 до 3:45 за тихоокеанським часом повністю зупинилася, всі валідатори одночасно потрапили у цикл краху, що призвело до неможливості обробки будь-яких транзакцій. Ця подія також викликала дискусії на ринку щодо питання «Чи жертвує високопродуктивний блокчейн стабільністю системи у гонитві за пропускною здатністю?»
(Перший випадок зупинки блокування Sui після запуску: розробники запевнили, що проблеми незначні, а наступного дня Franklin Templeton оголосила про співпрацю)
Аналіз попередньої причини збоїв: тригери перевантаження викликали крах валідаторів
Згідно з офіційним технічним описом, подія зупинки у листопаді 2024 року була спричинена логікою assert! у модулі контролю перевантаження (congestion control) Sui. Коли одночасно виконуються певні умови, це безпосередньо призводить до краху всіх валідаторів, що спричиняє зупинку всієї мережі.
Умови тригера включають:
Включення механізму контролю перевантаження у режимі TotalGasBudgetWithCap
Отримання мережею транзакції, яка містить «змінний спільний об’єкт як вхід»
Відсутність у цій транзакції команд MoveCall
За цих умов валідатори під час обчислення вартості стикалися з аномаліями, що спричиняло їхній крах і зупинку синхронізації.
Що таке контроль перевантаження? Необхідний компонент високопродуктивної архітектури Sui
Sui використовує об’єктно-орієнтовану (object-centric) модель реєстру, що дозволяє одночасне виконання великої кількості транзакцій, що є основою високої пропускної здатності. Однак, якщо кілька транзакцій одночасно намагаються записати у один і той самий спільний об’єкт, їх потрібно обробляти послідовно, що може спричинити вузькі місця у продуктивності.
Тому Sui запровадив механізм контролю перевантаження, який обмежує кількість транзакцій, що можуть оброблятися для одного спільного об’єкта за певний час, щоб уникнути зниження продуктивності через надмірне навантаження з боку високочастотних спільних об’єктів. Раніше фонд Sui також пояснював у неформальній зустрічі з XueDAO, що його основна ідея полягає у групуванні та пакетній обробці транзакцій з причинно-наслідковим зв’язком.
Нещодавно Sui оновив цю систему, додавши режим TotalGasBudgetWithCap для більш точного оцінювання обчислювальних витрат і складності транзакцій. Однак у цій моделі був виявлений вразливий логічний недолік, який і став причиною зупинки мережі у листопаді.
Команда Sui швидко подала патч (PR #20365) і випустила оновлення основної мережі v1.37.4 та тестової мережі v1.38.1. Офіційно повідомляється, що після випуску виправлень, спільнота валідаторів активно оновилася, і від моменту випуску патчу до повного відновлення роботи мережі минуло всього близько 15 хвилин, що демонструє високий рівень співпраці.
Ця стаття: Sui знову зупинився! Офіційно: мережа зупинилася, основна мережа наразі не може обробляти транзакції. Найраніше опубліковано на Chain News ABMedia.