Solana rilascia un rapporto completo sull'interruzione della Beta di Mainnet del 6 febbraio, riconducibile a una complicazione del programma Legacy
L'interruzione del 6 febbraio 2024 della Mainnet Beta di Solana è stata causata da una complicazione con i programmi legacy, come dettagliato nel rapporto completo di Solana compilato da Anza.
- Pubblicato: Feb 9, 2024 at 18:26
- Modificato: Jan 29, 2025 at 13:39
La blockchain Solana, nota per le sue capacità di transazione ad alta velocità, ha subito una significativa interruzione di rete martedì 6 febbraio, bloccando le operazioni per circa cinque ore. La causa principale, ora identificata e risolta, risiedeva in un complesso intoppo tecnico associato al sistema di esecuzione dei programmi della blockchain.
Solana Status ha ora pubblicato un rapporto sulla causa principale compilato dal team di ingegneria di Anza. Il problema derivava dalla cache di compilazione Just-In-Time (JIT) di Solana, un meccanismo sofisticato progettato per accelerare l'elaborazione delle transazioni richiamando ed eseguendo in modo efficiente le istruzioni del programma. Consideratelo come un sistema di scorciatoie ad alta tecnologia che improvvisamente ha iniziato a fare cilecca a causa di un problema con i programmi più vecchi, i cosiddetti legacy.
In un'analogia con il mondo reale, immaginate una biblioteca in cui i libri vengono letti frequentemente in una sezione speciale per un accesso rapido. Tuttavia, a causa di un errore di catalogazione, alcuni libri non vengono mai riconosciuti come parte di questa collezione. Ogni volta che vengono richiesti, sono sottoposti a un processo di check-in ripetitivo e inutile. Questo ritarda l'accesso e crea un loop che di fatto paralizza il sistema. Questo è esattamente ciò che è successo con Solana. La cache JIT della blockchain ha riscontrato un loop con alcuni programmi più vecchi, inducendola a ricompilarli ripetutamente invece di accedere ed eseguire in modo efficiente le loro istruzioni. Questo inconveniente ha provocato uno stallo della rete, in quanto il sistema si è impantanato in un loop infinito, incapace di elaborare le transazioni o di andare avanti.
Gli ingegneri dell'ecosistema Solana hanno rapidamente identificato e risolto il problema, implementando una soluzione che impedisce questi loop di ricompilazione aggiornando il modo in cui il sistema gestisce e riconosce i programmi più vecchi. Questa soluzione ha comportato la disabilitazione della distribuzione dei caricatori legacy problematici, assicurando che tutte le istruzioni del programma potessero essere accedute in modo corretto ed efficiente senza cadere nella trappola della ricompilazione.
Nel momento in cui Solana riprende le normali operazioni, l'incidente rappresenta una preziosa opportunità di apprendimento per gli ingegneri di Solana e per la più ampia comunità blockchain, sottolineando la necessità di continui miglioramenti e salvaguardie in queste piattaforme digitali in rapida evoluzione.