A rede Solana sofreu uma interrupção significativa em 6 de fevereiro, às 10h22 UTC. A produção de blocos ficou interrompida por mais de cinco horas antes que os validadores conseguissem reiniciar a rede.
Essa não é a primeira vez que a Solana fica fora do ar. Desde janeiro de 2022, a Solana passou por cerca de meia dúzia de interrupções significativas e quinze dias de interrupções parciais ou totais.
Engineers from across the ecosystem are investigating an outage on mainnet-beta. This thread will be updated as more information becomes available https://t.co/rfeioQ6BG9
— Solana Status (@SolanaStatus) February 6, 2024
Os engenheiros de todo o ecossistema estão investigando uma interrupção na rede principal beta. Este tópico será atualizado à medida que houver mais informações disponíveis
— Solana Status (@SolanaStatus)
Os incidentes variaram em termos de gravidade. Houve desde interrupções parciais até interrupções totais da rede, e suas causas incluíram vulnerabilidades de software na rede, ataques de negação de serviço e exaustão de recursos.
A interrupção mais recente foi atribuída a uma falha que resultou em um erro de loop infinito, que fez com que os validadores fossem travados em um determinado bloco. Um erro de loop infinito faz com que um programa fique preso em um ciclo interminável, o que, no caso do Solana, impediu que os validadores verificassem as transações na rede, pois estavam presos tentando processar o mesmo bloco.
Post-mortem
A Solana divulgou um relatório post-mortem da recente interrupção ocorrida em 9 de fevereiro, detalhando as causas e a forma como os validadores reiniciaram a rede. O relatório revelou que o cache de compilação Just-in-Time (JIT) da Solana, que compila todos os programas antes de executar uma transação, encontrou a falha.
Anteriormente, o cache JIT era implementado usando o "ExecutorsCache", porém, com a versão v1.16, o ExecutorsCache foi substituído por uma nova implementação chamada "LoadedPrograms". O novo programa usava informações contábeis armazenadas na conta de um programa on-chain para procurar seu slot de implementação mais recente e usá-lo para calcular a altura efetiva do slot.
No entanto, esse programa de carregamento encontrou um problema de carregador legado que fez com que o cache JIT encontrasse um loop com programas mais antigos, fazendo com que ele os recompilasse repetidamente em vez de acessar e executar suas instruções com eficiência. Essa falha resultou em uma paralisação da rede, pois o sistema ficou atolado em um loop infinito, incapaz de processar transações ou avançar.
Austin Federa, chefe de estratégia da Solana, disse ao Cointelegraph que havia um processo para substituir o antigo sistema de carregamento por um novo sistema de motor, mas estava programado para ser desativado a partir da versão atualizada.
"Parece que alguém chamou intencionalmente aquele conjunto de instruções antigo, que não era usado há muito tempo, mas ainda estava presente na base de código. O compilador JIT teve problemas não conseguindo encontrar o que estava procurando. E foi isso que criou o loop infinito."
Os engenheiros da Solana descobriram e corrigiram rapidamente o problema, atualizaram os processos do sistema e identificaram esses programas antigos para evitar futuros ciclos de recompilação. Essa solução envolveu a redução da implantação de carregadores legados problemáticos para garantir que todas as instruções do programa pudessem ser acessadas com precisão e eficácia sem cair na armadilha da recompilação.
Alguns críticos disseram que um fator crítico que contribui para as interrupções do Solana é a falta de diversidade de clientes, o que resulta em possíveis pontos centrais de falha. Kadan Stadelmann, diretor de tecnologia da plataforma de exchange descentralizada de código aberto Komodo, disse ao Cointelegraph que os desenvolvedores e validadores da Solana priorizam o envio rápido de código em detrimento da manutenção do tempo de atividade perfeito da rede, acrescentando:
"O principal motivo é a centralização e a falta de opções de clientes validadores. A ambição da Solana por alto rendimento e baixo tempo de transação exerce imensa pressão sobre a sua infraestrutura, tornando-a suscetível à degradação do desempenho e a interrupções."
No entanto, Federa sugere que Solana possui uma arquitetura muito mais precisa e explica que apenas duas redes de contratos inteligentes em todo o mundo têm clientes validadores independentes: a Ethereum e Sa olana. Atualmente, a Solana tem um cliente validador principal construído em uma base de código funcional.
"A Solana nunca foi vítima de uma interrupção devido a uma falha no consenso ou algo do gênero. Os problemas sempre foram detalhes de implementação. Sempre houve uma falha em algum lugar da camada de implementação, o que não é melhor nem pior. É apenas um tipo importante de precisão", explicou Austin.
Saga "beta" da rede principal da Solana
A blockchain da Solana foi lançada em março de 2020 e, nos quatro anos seguintes, a rede fez avanços significativos no ecossistema de finanças descentralizadas (DeFi). Atualmente, a Solana é a quinta maior rede de finanças descentralizadas (DeFi) em valor total bloqueado, com mais de US$ 1,7 bilhão em capital alocado em diferentes protocolos on-chain. Seu token nativo, Solana (SOL), tem uma capitalização de mercado de cerca de US$ 49 bilhões, o que o torna a quinta maior criptomoeda do mercado.
Apesar de um histórico magnífico, a Solana nunca saiu oficialmente de sua fase beta. A blockchain ainda é chamada de beta da rede principal. Beta é um termo que se refere a um software quase pronto que um grupo seleto de usuários pode testar antes do lançamento oficial.
No entanto, a blockchain da Solana está aberta a todos, com centenas de aplicativos descentralizados utilizados para lançar vários produtos. A Solana também conta com um vibrante ecossistema de tokens não fungíveis (NFT).
A Solana passou por breves testes beta privados e públicos antes de lançar a versão 1.0 há quatro anos e, atualmente, a rede processa mais transações do que a maioria das outras redes.
Embora o código ainda esteja sendo mudado, a Solana está muito além do que pode ser considerado um software beta. A percepção errônea persistente resulta de uma confusão entre os testes pré-lançamento e a maturidade do software pós-lançamento, além de concepções errôneas sobre as mensagens da Solana.
O status beta atraiu muitas críticas à blockchain, especialmente à luz de suas interrupções testemunhadas nos últimos dois anos. Os usuários de criptomoedas nas redes sociais frequentemente zombam do fato de que o status de Solana como blockchain convencional muda frequentemente para beta da rede principal e vice-versa, dependendo se a cadeia está ou não fora do ar.
Solana is a joke. Period.
— David Miller ⬡ (@CryptoDavid_) May 1, 2022
How many halts have there been in lasts months? The “it’s a beta” is not an excuse anymore. $SOL #Solana pic.twitter.com/IjvRaM58dZ
A Solana é uma piada. Ponto final.
Quantas interrupções ocorreram nos últimos meses? A desculpa "é um beta" não serve mais. $SOL #Solana
— David Miller ⬡ (@CryptoDavid_)
Federa argumentou que a maioria dos sistemas de blockchain está em fase beta atualmente e que provavelmente apenas o Bitcoin e a Ethereum têm redes principais ativas e completas e explicou:
"Leva muito tempo para que os sistemas de software se estabilizem e se tornem completos, pois novos recursos importantes ainda estão sendo lançados na rede da Solana. Acho que provavelmente estamos chegando ao fim dessa fase beta. Do ponto de vista tecnológico, um dos marcos significativos para isso será o lançamento de um segundo cliente validador independente."
Muitos defensores do setor de DeFi acreditam que o tempo de inatividade do Solana é um obstáculo definitivo para seu objetivo de se tornar um concorrente da Ethereum. Ainda assim, os desenvolvedores trabalharam para garantir que as falhas que resultaram em períodos de inatividade no passado não afetem a rede no futuro. Apesar do histórico manchado por paralisações, a alta velocidade e o baixo custo da Solana desempenham um papel fundamental na atração de novos projetos para a plataforma.
LEIA MAIS
- Banco Central e CVM estão se unindo para criar regras para o Bitcoin e criptomoedas no Brasil, revela Campos Neto
- Metaverso, likes e Reels: Instagram prepara as principais tendências da plataforma para o ano de 2023
- Transferência de US$ 200 milhões em Tether chama atenção e pode movimentar mercado de criptomoedas