Solana, aby zapobiec przyszłemu zamknięciu sieci, jeśli ponownie pojawi się błąd w czasie pracy: Szczegóły

Połączenia Sieć Solana Ostatnią awarię doświadczył 1 czerwca, kiedy klaster Solana Mainnet Beta przestał tworzyć bloki z powodu zablokowania konsensusu. Zostało to spowodowane błędem wykonawczym funkcji trwałych transakcji jednorazowych, która reguluje sposób, w jaki łańcuch bloków obsługuje określoną formę transakcji przeznaczoną do użytku offline.

Po wyłączeniu tych „trwałych transakcji jednorazowych” walidatory rozpoczęły ponowne uruchamianie sieci cztery i pół godziny później. Następnego dnia o godzinie 9:00 czasu UTC wznowiono produkcję bloków, a operatorzy sieci przez kilka następnych godzin kontynuowali przywracanie usług klienckich.

Niedawna przerwa w dostawie prądu sugerowała, że ​​Solana nie jest w stanie obsługiwać trwałych przesyłek jednorazowych. Walidatorzy sieci podwójnie liczyli te niszowe wpływy jako pojedynczą transakcję na dwóch odrębnych wysokościach bloków, zamiast traktować je jako pojedynczą transakcję. Mechanizm konsensusu Solany został skutecznie złamany przez tę niemożliwą sytuację.

Solana podejmuje aktywne kroki

Aby zwiększyć przepustowość, Solana wykorzystuje przetwarzanie równoległe nienakładających się transakcji. Rosnąca wartość jednorazowa może być używana w sieciach, które wykonują transakcje szeregowo; Solana stosuje inny mechanizm, aby zapewnić, że transakcje nie będą przetwarzane dwukrotnie. Ponieważ trwałe transakcje jednorazowe nie mają wygasnąć, wymagają innego podejścia, aby uniknąć podwójnego przetwarzania i są obsługiwane sekwencyjnie.

Reklamy

Przetwarzanie trwałej transakcji jednorazowej ujawniło błąd w środowisku wykonawczym, który uniemożliwiał działanie sieci podczas przerwy. Pomyślna transakcja nie spowodowałaby tego problemu, ponieważ trwała transakcja jednorazowa zakończyłaby się niepowodzeniem.

Funkcjonalność trwałych transakcji jednorazowych została wyłączona w wersjach 1.9.28/1.10.23, aby zapobiec zawieszeniu się sieci w przypadku ponownego wystąpienia tej samej okoliczności. Trwałe transakcje jednorazowe nie zostaną wykonane do czasu wdrożenia zabezpieczenia i ponownej aktywacji funkcji w przyszłej wersji.

Źródło: https://u.today/solana-to-prevent-future-network-shutdown-if-runtime-bug-arises-again-details