Base каже, що та сама помилка секвенсора спричинила збої 25 та 26 червня.

Base пояснила, чому її мейннет двічі зупиняв виробництво блоків за два дні

Підсумок

  • Останній постмортем Base показує, що один баг у секвенсері спричинив дві зупинки мейннету протягом двох днів поспіль.
  • Кошти залишалися в безпеці, але черги транзакцій переповнилися, оскільки Base тимчасово припинила виробництво нових L2-блоків.
  • Після інциденту команда планує посилити фаззинг-тести, тести навантаження, моніторинг та інструменти відновлення.

Мережа Ethereum L2 на базі Coinbase повідомила, що обидві зупинки сталися через один і той самий баг у логіці побудови блоків секвенсера.

Перша зупинка розпочалася 25 червня і тривала близько 116 хвилин. Друга розпочалася 26 червня і тривала близько 20 хвилин. Base заявила, що під час обох інцидентів кошти залишалися в безпеці.

Баг секвенсера зупинив виробництво блоків

У своєму офіційному постмортемі Base повідомила, що недійсна транзакція не виконалася під час виконання, як і очікувалося. Проблема виникла після цього збою, коли застарілий стан журналу залишився всередині будівельника блоків.

25 та 26 червня мейннет Base зазнав двох зупинок виробництва блоків, обидві спричинені одним і тим самим базовим багом у логіці будівельника блоків.

Ми визначили та виправили першопричину та надіслали постмортем ланцюгам OP як зворотний зв'язок.

Усі кошти були в безпеці… pic.twitter.com/eArnK12AgZ

— Base Build (@buildonbase) 27 червня 2026

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

Це створило блок із недійсним переходом стану. Інші вузли не змогли прийняти блок, тому ланцюг припинив виробництво нових L2-блоків.

«Цілісність ланцюга не було порушено, і всі кошти на Base були в безпеці», — заявили в Base.

Команда додала, що виробництво блоків відновилося безпечно після пом'якшення.

Транзакції ставали в чергу під час зупинки

Під час простою користувачі не могли додати нові транзакції в ланцюг. Base повідомила, що транзакції стояли в черзі в мемпулі, поки ланцюг чекав відновлення виробництва блоків.

Пул транзакцій згодом виріс за межі своєї ємності. У результаті нові запити eth_sendRawTransaction повертали помилки протягом вікна простою.

Зупинка також вплинула на прогрес секвенсера та валідатора. Base повідомила, що ці вузли не могли вийти за межі недійсного блоку, доки не відновилося секвенсування.

Як повідомлялося раніше, Base спочатку позначила несправне виробництво блоків 25 червня, перш ніж інженери ізолювали проблему консенсусу, пов'язану з недійсним блоком.

Патч виправив проблему застарілого стану

Base повідомила, що виправила основний баг, застосувавши патч секвенсера. Патч гарантує, що стан журналу належним чином оновлюється під час виконання після невдалої транзакції.

Команда також виявила другу проблему під час відновлення. Base повідомила, що пом'якшення зайняло більше часу, оскільки стан гонки у функції скидання двигуна завадив секвенсерам наздогнати після перезапуску.

Ця друга проблема допомогла пояснити, чому інцидент повернувся наступного дня. Base повідомила, що проблема вплинула на секвенсери, а не на вузли валідатора, але все ж уповільнила відновлення.

Сторінка статусу Base показала, що секвенсування відновилося 25 червня. Вона також повідомила операторам вузлів екосистеми перезапустити вузли Base, якщо вони все ще заблоковані.

Заплановані зміни в тестуванні та відновленні

Base повідомила, що посилить фаззинг-тести протоколу та тести навантаження. Ці методи допомагають командам знаходити дивні шаблони транзакцій, які можуть виявити приховані баги.

Команда також планує кращий моніторинг та операційні перевірки. Вона повідомила, що ці зміни мають допомогти інженерам раніше виявляти подібні проблеми та швидше реагувати.

Base також хоче додати плавне відновлення до base-consensus. Ця зміна полегшить вузлам валідатора продовження синхронізації після подібних збоїв.

Зупинка сталася протягом напруженого тижня для мережі. Base також просунулася з оновленням Beryl, яке додає стандарт токенів B20 і скорочує стандартний період виведення коштів з Base на Ethereum з семи днів до п'яти днів.

Інцидент дає розробникам і користувачам чіткіше уявлення про слабке місце. Base тепер назвала баг, випустила патч і перерахувала тести, які планує покращити.

ETH0,65%
OP-0,06%
NODE-1,84%
TOKEN-0,43%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Репост
  • Поділіться
Прокоментувати
Додати коментар
Додати коментар
Немає коментарів
  • Закріплено