Возобновление производства блоков Stacks
24 мая проект Stacks, представляющий собой решение второго уровня для Bitcoin, объявил о возобновлении производства блоков после устранения проблем, связанных с неправильным поведением узлов в логике синхронизации мемпула. Система рекомендовала всем операторам узлов, особенно майнерам и подписантам, обновить свои узлы до версии 3.1.0.0.11.
Предупреждение о сбоях в производстве блоков
Несмотря на это, в обновлении, опубликованном через платформу X, Stacks также предупредило о возможных сбоях в производстве блоков, которые могут продолжиться, пока все майнеры и подписанты не завершат обновление.
Объявление о необходимости обновления было сделано всего через несколько часов после того, как основные разработчики Stacks сообщили о выявлении потенциальной причины проблемы.
Причины проблемы и устранение неисправностей
В первоначальном отчете на Github команда указала, что проблема возникла в 2020 году из-за некорректного поведения в логике синхронизации мемпула. Это приводило к тому, что некоторые узлы возвращали неверные ответы на RPC-вызовы, используемые для нормальной работы системы. Узлы Stacks, инициирующие эти вызовы, имели дефекты в своей логике, что вызывало их неотзывчивость в сети.
Это не было проблемой до тех пор, пока количество обрабатываемых данных в некоторые недавние блоки не возросло значительно.
Совместимость и дальнейшие шаги
Согласно предварительным выводам, последнее обновление совместимо с директориями chainstate версии 3.x.x.x.x. Ожидается, что новый релиз окончательно решит проблему, о которой Stacks впервые заявил 18 апреля. На тот момент команда Stacks уверяла, что «простой патч» сможет устранить неисправность и операторам не придется ничего менять.
Тем не менее, задержка в производстве блоков, связанная с форком Bitcoin на блоке 897442, подтолкнула разработчиков к началу нового расследования 19 мая. После того как 70% подписантов вернулись к предыдущей версии chainstate, нормальное производство блоков возобновилось, но разработчики вновь сообщили о задержке через четыре дня.