Solana, hogy megakadályozza a jövőbeli hálózatleállást, ha futásidejű hiba ismét jelentkezik: Részletek

A Solana hálózat június 1-jén tapasztalta legutóbbi kiesését, amikor a Solana Mainnet Beta fürt leállt a blokkok létrehozásáról az elakadt konszenzus miatt. Ezt a tartós nonce tranzakciós funkció futásidejű hibája hozta létre, amely azt szabályozza, hogy a blokklánc hogyan kezeli a tranzakció egy adott, offline használatra szánt formáját.

Miután letiltották ezeket a „tartós nonce tranzakciókat”, az érvényesítők négy és fél órával később elkezdték újraindítani a hálózatot. Másnap, 9:00 órakor UTC újraindult a blokkgyártás, és a hálózatüzemeltetők a következő órákban folytatták az ügyfélszolgáltatások helyreállítását.

A közelmúltbeli leállás azt sugallja, hogy Solana nem képes kezelni a tartós hibalehetőségeket. A hálózat érvényesítői ezeket a bejövő réseket duplán egyetlen tranzakciónak számolták két különböző blokkmagasságban, ahelyett, hogy egyetlen tranzakciónak tekintették volna őket. Solana konszenzusmechanizmusát gyakorlatilag megtörte ez a lehetetlen helyzet.

Solana proaktív lépéseket tesz

Az átviteli sebesség növelése érdekében a Solana a nem átfedő tranzakciók párhuzamos feldolgozását használja. Növekvő nonce-t használhatnak azok a hálózatok, amelyek sorozatosan hajtják végre a tranzakciókat; A Solana más mechanizmust alkalmaz annak biztosítására, hogy a tranzakciókat ne kezeljék kétszer. Mivel a tartós nonce tranzakciók nem járnak le, a kettős feldolgozás elkerülése érdekében eltérő megközelítést igényelnek, és szekvenciálisan kezelik őket.

hirdetések

Egy tartós nonce tranzakció feldolgozása feltárt egy hibát a futásidőben, amely megakadályozta a hálózat előrehaladását a kimaradás során. Egy sikeres tranzakció nem okozta volna ezt a problémát, mert a tartós nonce tranzakció meghiúsult volna.

A tartós nonce tranzakció funkciót a v1.9.28/v1.10.23 kiadásokban deaktiválták, hogy megakadályozzák a hálózat leállását, ha ugyanaz a körülmény ismét felmerül. A tartós nonce tranzakciók addig nem hajtódnak végre, amíg a mérséklést nem telepítik, és a funkciót újra nem aktiválják egy jövőbeli verzióban.

Forrás: https://u.today/solana-to-prevent-future-network-shutdown-if-runtime-bug-arises-again-details