Sui 主网首次中断问题总结
事件概述
太平洋时间2024年11月21日上午大约1:15至3:45之间(东八区时间:2024年11月21日下午5:15至7:45),Sui主网发生了全面网络停滞。所有验证节点陷入崩溃循环,导致交易处理完全中断。
问题原因
阻塞控制代码中的assert!触发了错误:如果估算的执行成本为零,则会导致验证节点崩溃。此问题发生需满足以下所有条件:
1. 阻塞控制设置为TotalGasBudgetWithCap模式:
-
该模式在协议版本63中短暂启用后被撤销,随后在协议版本68中随累积调度器再次启用。
2.网络接收到同时包含以下条件的交易:
-
可变共享对象输入
-
零个MoveCall指令
当网络接收到此类交易时,所有验证节点立即崩溃。
什么是阻塞控制?
Sui网络基于对象的架构支持大规模并行处理不同的用户交易,这在大多数其他网络中无法实现。然而,如果多笔交易同时写入同一共享对象,则这些交易必须按顺序执行,且涉及该特定对象的交易处理量存在上限。
阻塞控制系统通过限制写入同一共享对象的交易速率,防止网络因执行时间过长的检查点而过载。
我们最近升级了阻塞控制系统,以通过更准确地估算交易复杂度来提高共享对象的利用率。但新模式TotalGasBudgetWithCap的代码中存在一个bug,导致此次问题的发生。
如何解决问题?
在问题确立后,代码修复十分直接(详见 PR #20365)。该修复已部署到主网(v1.37.4)和测试网(v1.38.1)。
PR #20365:将bump_object_execution_cost修改为使用饱和加法,并允许0成本交易。
🌟 主网v1.37.4:https://github.com/MystenLabs/sui/releases
在验证节点社区的积极响应下,从修复发布到Sui网络恢复正常仅用了15分钟。
我们学到了什么?
-
事件检测与响应系统运行良好: 自动警报与社区报告几乎同时触发,我们迅速调动团队资源进行诊断和修复。
-
验证节点社区表现出色: 修复发布后,Sui网络几乎立刻恢复正常。
预防措施
-
改进测试系统: 增加更多类似触发此次崩溃的对抗性交易类型,以发现潜在问题。
-
优化构建流程: 提高调试和发布二进制文件的生成速度,进一步减少事件响应时间。此次中断过程中的一部分时间是由于等待构建发布版本。
感谢社区和验证节点的支持,共同确保了Sui网络的快速恢复!
免责声明:本文章仅代表作者个人观点,不代表本平台的立场和观点。本文章仅供信息分享,不构成对任何人的任何投资建议。用户与作者之间的任何争议,与本平台无关。如网页中刊载的文章或图片涉及侵权,请提供相关的权利证明和身份证明发送邮件到[email protected],本平台相关工作人员将会进行核查。
免责声明:文章中的所有内容仅代表作者的观点,与本平台无关。用户不应以本文作为投资决策的参考。
你也可能喜欢
ZRCUSDT 现已上线合约交易和策略交易
Bitget 已于2024年11月25日(UTC+8)上线 ZRCUSDT 合约交易,最大杠杆为20倍,合约策略交易将同步开放。 欢迎通过我们的官方网站或 Bitget APP 开始合约交易。 ZRC U本位永续合约: 合约参数 详情 上线时间 2024年11月25日 19:10(UTC+8) 合约标的 ZRC 结算资产 USDT 最小变动价位 0.00001 最高杠杆倍数 20x 资金费用结算频率 每八个小时 交易时间 7*24 根据市场风险状况,Bitget可能调整包括最小变动价格、最高杠杆倍数、维持保证金率等重要合约参数; 【合约】 Bitget 的合约包括:U本位合约、币本位合约和
Bitget 现货策略新增 ZRC/USDT
我们很高兴的宣布,Bitget 现货策略现已新增: ZRC/USDT。 参考链接 1、 现货策略 2、 快速了解现货网格策略 免责声明 尽管加密货币有很高的投资潜力,但也具有很高的市场风险和波动性。所有交易策略均由您自行决定并自担风险,Bitget 不承担任何责任。
Magic Eden (ME):Solana 上最大的 NFT 市场
什么是Magic Eden(ME)? Magic Eden (ME) 是 NFT 领域的主要参与者。它最初是 Solana 区块链上最大的 NFT 市场,以交易速度快和费用低而闻名。随着时间的推移,该平台扩大了覆盖范围,支持以太坊、Polygon 和比特币上的 NFT。 Magic Eden 帮助用户交易数字收藏品并启动他们的 NFT 项目。无论您是创作 NFT 的艺术家、寻找稀有数字资产的收藏家,还是探索新机会的投资者,Magic Eden 都提供了一个用户友好的平台来参与这种不断发展的数字文化。 Magic Eden 每月拥有超过 2200 万访客、8,000 多个收藏品和 19 亿美元
Cheems (CHEEMS):倡导动物福利和社区精神的模因币
什么是Cheems (CHEEMS)? Cheems (CHEEMS) 是一种表情包币。Cheems 以一只无助但可爱的柴犬为象征,也扮演着“表情包之王”的角色,颂扬幽默和创造力在团结人们方面的力量。 然而,除了俏皮的外表之外, Cheems 还肩负着一项严肃的使命:促进动物福利,培养对所有生物的仁慈和同情心。 谁创立了 Cheems (CHEEMS)? 该项目背后的团队选择保持匿名。 哪些风险投资支持 Cheems (CHEEMS)? 目前,Cheems 还没有风险投资资金,没有团队储备,也没有来自代币本身的收入来源,是一个 100% 社区驱动的项目。 Cheems (CHEEMS) 如何