Solana for å forhindre fremtidig nettverksavslutning hvis kjøretidsfeil oppstår igjen: Detaljer

De Solana nettverk opplevde sitt siste driftsbrudd 1. juni, da Solana Mainnet Beta-klyngen sluttet å lage blokker på grunn av stoppet konsensus. Dette ble opprettet av en kjøretidsfeil i funksjonen for holdbare ikke-transaksjoner, som styrer hvordan blokkjeden håndterer en bestemt form for transaksjonen beregnet på offline bruk.

Etter å ha deaktivert disse "varige nonce-transaksjonene", begynte validatorer å starte nettverket på nytt fire og en halv time senere. Dagen etter, klokken 9:00 UTC, startet blokkproduksjonen på nytt, og nettverksoperatører fortsatte å gjenopprette klienttjenester i løpet av de neste timene.

Det nylige strømbruddet antydet en svikt i Solanas evne til å håndtere holdbare nonces. Nettverkets validatorer har dobbeltregnet disse nisjeinngangene som en enkelt transaksjon i to separate blokkhøyder, i stedet for å betrakte dem som en enkelt transaksjon. Solanas konsensusmekanisme ble effektivt brutt av denne umulige vanskeligheten.

Solana tar proaktive skritt

For å øke gjennomstrømmingen bruker Solana parallell behandling av ikke-overlappende transaksjoner. En inkrementerende nonce kan brukes av nettverk som utfører transaksjoner serielt; Solana bruker en annen mekanisme for å sikre at transaksjoner ikke håndteres to ganger. Fordi varige nonce-transaksjoner ikke er ment å utløpe, krever de en annen tilnærming for å unngå dobbeltbehandling og håndteres sekvensielt.

annonser

Behandlingen av en varig nonce-transaksjon avslørte en feil i kjøretiden som stoppet nettverket fra å fortsette gjennom strømbruddet. En vellykket transaksjon ville ikke ha forårsaket dette problemet fordi den varige nonce-transaksjonen ville ha mislyktes.

Den varige nonce-transaksjonsfunksjonaliteten ble deaktivert i utgaver v1.9.28/v1.10.23 for å forhindre at nettverket stopper opp hvis samme omstendighet oppsto igjen. Varige nonce-transaksjoner vil ikke utføres før reduksjonen er implementert og funksjonen reaktivert i en fremtidig versjon.

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