Solana 网络于世界标准时间 2 月 6 日上午 10:22 经历了严重中断,区块生产暂停了五个多小时,然后验证器重新启动了网络。
这并不是 Solana 第一次宕机。
自 2022 年 1 月以来,Solana 已发生大约六次重大停机和十五天部分或重大停机。
来自整个生态系统的工程师正在调查主网测试版的中断问题。
随着更多信息的出现,此线程将被更新 https://t.co/rfeioQ6BG9
— Solana Status (@SolanaStatus) 2024 年 2 月 6 日
这些事件的严重程度各不相同,从部分网络中断到全部网络中断,其原因包括网络中的软件漏洞以及拒绝服务和资源耗尽攻击。
尸检
Solana 于 2 月 9 日发布了最近一次中断的事后报告,详细说明了其原因以及验证器如何重新启动网络。
该报告显示,Solana 的即时 (JIT) 编译缓存遇到了该错误,该缓存会在执行事务之前编译所有程序。
早些时候,JIT 缓存是使用“ExecutorsCache”实现的,但是,在 v1.16 版本中,ExecutorsCache 被名为“LoadedPrograms”的新实现所取代。
新的加载程序使用存储在程序链上帐户中的会计信息来查找其最近的部署槽,并使用它来计算有效的槽高度。
然而,该加载程序遇到了遗留加载程序问题,导致 JIT 缓存遇到旧程序的循环,导致它重复重新编译它们,而不是有效地访问和执行它们的指令。
这一故障导致网络停滞,因为系统陷入无限循环,无法处理交易或继续前进。
Solana 战略主管 Austin Federa 告诉 Cointelegraph,有一个用新电机系统替换旧装载机系统的过程,但计划在更新版本中禁用它。
“看起来有人故意调用那个旧指令集,它已经很长时间没有使用了,但仍然存在于代码库中。
JIT 编译器遇到了无法找到所需内容的问题。
这就是无限循环的原因。”
Solana 工程师很快发现并修复了问题,更新了系统进程,并识别了这些旧程序以防止未来的重新编译周期。
该解决方案需要减少麻烦的遗留加载程序的部署,以确保可以准确有效地访问所有程序指令,而不会陷入重新编译陷阱。
最新:ZK 证明给开发人员带来了安全挑战
Some critics have said that a significant factor contributing to Solana’s outages is the lack of client diversity, leading to potential central points of failure. Kadan Stadelmann, chief technology officer of open source decentralized exchange platform Komodo, told Cointelegraph that Solana’s developers and validators prioritize shipping code fast over maintaining perfect network uptime, adding:
“The key reason is centralization and lack of validator client options. Solana’s ambition for high throughput and low transaction times puts immense pressure on its infrastructure, making it susceptible to performance degradation and outages.”
However, Federa suggests Solana possesses much more accurate architecture and explains that only two smart contract networks worldwide have independent validator clients: Ethereum and Solana. Currently, Solana has one major validator client built on one functional codebase.
“Solana has never had an outage due to a fault in consensus or something along those lines. The problems have always been implementation details. It’s always been that there’s been a bug somewhere in the implementation layer, which is not better or worse. It’s just an important kind of accuracy,” Austin explained.
The Solana blockchain was launched in March 2020, and over the next four years, the network has made significant strides in the decentralized finance (DeFi) ecosystem. Solana ranks as the fifth-largest DeFi chain in total value locked, with over $1.7 billion in capital allocated to different on-chain protocols. Its native Solana (SOL) token has a market valuation of around $49 billion, making it the fifth-largest cryptocurrency.
Despite a magnificent track record, Solana has never officially come out of its beta phase. The blockchain is still referred to as being in mainnet beta. Beta is a term that refers to nearly finished software that a select group of users is testing before an official launch.
However, the Solana blockchain is open to everyone, with hundreds of decentralized applications utilized to launch various products. The blockchain ecosystem also boasts a vibrant nonfungible token (NFT) ecosystem.
Solana underwent brief private and public beta testing before releasing v1.0 four years ago, and today, the network processes more transactions than most other chains.
Even though the code is still changing, Solana is much beyond what can be considered beta software. The persistent misperception results from a mix-up between pre-launch testing and post-launch software maturity and misconceptions around Solana’s messaging.
Recent: How can crypto firms bridge the gap with traditional finance?
The beta status has attracted much criticism of the blockchain, especially in light of its outages over the past two years. Crypto users on social media have often mocked that Solana’s status as a mainstream blockchain often changes to mainnet beta and back, depending on whether the chain is down.
索拉纳就是个笑话。
时期。
过去几个月有多少次停车?
“这是测试版”不再是借口。
$SOL #Solana pic.twitter.com/IjvRaM58dZ
— 大卫·米勒 ⬡ (@CryptoDavid_) 2022 年 5 月 1 日
Federa 声称大多数区块链系统目前都处于测试阶段,只有比特币和以太坊可能是完整的主网,并解释道:
“软件系统需要很长时间才能稳定并实现功能完整,因为重要的新功能仍在 Solana 网络上发布。
我认为我们可能已经接近测试阶段的结束。
从技术角度来看,重要的里程碑之一将是推出第二个独立验证器客户端。”
许多 DeFi 支持者认为,Solana 的停机无疑是其成为以太坊竞争对手的障碍。
尽管如此,开发人员仍在努力确保导致过去停机的错误不会影响未来的网络。
尽管其停机历史悠久,但其高速度和低成本在吸引新项目到该平台方面发挥着关键作用。