火币网官方网址

    火币网官方网址 好链资讯

    火币网官方网址

    2020年12月19日,Filecoin网络经历了一个链式停顿,这意味着在一段时间内可以创建新的块,但矿工无法就生成的状态达成共识,每个矿工计算的值也不同。多亏了社区成员、矿工和开发商的快速反应——修复程序在4小时内发布,网络在7小时内完全恢复。本张文描述了遇到的问题、中断的影响、快速响应和下一步行动。

    原因

    潜在的问题是在存储挖掘器的实现中迭代对象映射。角色在围棋中实现。众所周知,遍历Go映射是不确定的,参与者使用一个模式总是在使用迭代之前对迭代结果进行排序(强制静态分析)。不幸的是,对两个这样的地图进行排序时使用的比较函数中的错误会导致无效排序(参见# 1335)。因此,不同的节点以不同的顺序处理地图条目,导致不同的结果和气体消耗。

    事实上,代码路径只能由(a)声明终止多个扇区的矿工,或者(b)立即恢复跨越多个分区的故障的矿工来到达。(另外两条代码路径已经到了这个地步,但实际上可能性极小。).在此之前,这两条路径都没有在主网络中使用,多个扇区/分区也没有作为暴露不确定性的数据。多个部门同时终止导致了这种暂停。

    Filecoin参与者的测试涵盖了有问题的代码,但不包括验证不同测试运行之间的确定性执行的机制。由Lotus节点实现的集成测试不包括终止多个扇区。

    中断影响

    最重要的是,应该强调在中断期间没有数据丢失。虽然无法创建新的数据块会暂时抑制网络上的事务,但存储供应商提供的所有数据都是安全的,一旦网络恢复运行,就可以使用。此外,值得注意的是,即使在链中断的情况下,Filecoin协议的规范也提供了数据检索。因此,尽管在活动期间不可能进行连锁交易,但Filecoin网络的核心功能保持不变。此外,已采取修复措施,确保采矿作业本身不会因停机而受到惩罚;相反,为了降低优先级和鼓励网络恢复,共识减少被暂时减少。

    快速反应

    首次发现、识别、修复和部署基本问题的速度也很明显:

    事故发生后15分钟内,自动监控系统触发了警报

    30分钟内,矿工和实现开发人员聚集在一起

    在四个小时内,开发人员发现并发布了这个问题的解决方案

    七个小时之内,足够多的节点采用了这种修复方案,超过了大多数共识的功率阈值,使网络走上了恢复之路

    对于年轻的分散网络,这是一个令人难以置信的快速反应。即使区块链的建立不时经历连锁暂停和分叉,费列柯解决这一事件的时间对于一直运行的连锁来说也是相当长的几年。整个社会应该为处理这一事件的速度感到自豪。

    这种复苏只有在世界各地许多团体的共同努力下才能实现。整个生态系统的各方合作实现这个目标:矿工检测并报告问题,引起开发者的关注;工程团队协调开发和发布同行针对潜在问题审查的补丁,并通过社区渠道传达该补丁的状态;世界各地的网络参与者都在尝试应用补丁,并尽快使网络恢复在线。虽然没有必要重复这样的紧急事件,但它令人印象深刻地展示了Filecoin生态系统中的参与和专注。

    下一步是什么

    建造区块链就像建造软件火箭。它们是非常复杂的技术,很难在第一次尝试中做好每一件事。就像真正的火箭一样,事情可能会以意想不到的方式出错。当这种情况发生时,重要的是要有适当的基础设施来尽快解决问题,最大限度地减少影响并减少复发的可能性。

    为了实现这一目标,几个团队编写并执行了事后验收,确定了参与者/角色的测试覆盖范围,以及网络基础设施/通信警报和问题升级的其他改进,以帮助缓解未来的事件。

    得益于Filecoin社区的耐心、努力和承诺,这种新颖技术的缺点正在不断得到解决。在所有问题都被发现和解决后,网络将进一步发展成为一个稳定、可靠和经过飞行验证的平台。

    发表评论

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。