NEAR周报| 权球大战测试网3回顾

币圈百科
个人专栏
热度: 10975

第三周Stake Wars回顾

第三周Stake Wars回顾

 

文本翻译自Near官方博客:《Stake Wars Week 3 Retro》

https://nearprotocol.com/blog/stake-wars-week-3-retro/  

在太平洋标准时间11月18日上午8点,我们接到了大约10个人参与的第三次“权球大战”的电话会议。我们再次通过我们的定制表格向公众开放了验证者的注册。但是,由于对表单的测试不足,直到周日才被发现某些错误,这可能会导致一些注册丢失。导致本周实际上只有五名外部验证者参与到了“权球大战”测试。

 

会议期间网络按预期启动。但是,我们意识到新的状态同步代码无法正常工作,在出现空状态时会感到恐慌。修复错误后,我们在星期一下午使用同一批的验证器重新启动了网络。但是,由于时区差异,没有一个外部验证者能够与我们同时重新启动其节点,这导致最终网络停滞,因为在线的验证者少于2/3。

 

此后不久,我们注意到节点变得很难同步到“权球大战”网络。经过一些调试后,我们意识到网络分支和节点难以同步,因为它们错误地拒绝了已知的标头,因此它们无法进行状态同步。我们修复了标头同步中的错误,并更改了块生成的自适应等待时间,以减少分叉。网络在星期二晚上再次重新启动。

 

新网络正常运行了几天,直到墨菲定律生效。这次,网络本身看起来还不错,但是没有交易可以通过,这意味着没有人可以在我们的“权球大战”钱包中注册帐户或发送抵押交易。研究它时,我们发现新生成的块中没有任何交易。

 

同时,我们所有的验证者都已被踢出网络,这使得调试变得更加困难。作为调试解决方法,我们找到了一种方法,可以通过自定义节点代码以了解为什么不包含块的方式来模拟块生产节点,从而很快导致在块生产逻辑中发现一个简单但难以发现的错误。

 

以下是我们在本周进行的“权球大战”中发现的问题的摘要:

·状态同步在空状态下崩溃。新的状态同步代码在接收到空状态时会错误地崩溃,该状态已在https://github.com/nearprotocol/nearcore/pull/1716中修复。

·块头部同步期间错误拒绝旧的块头部,此问题已在https://github.com/nearprotocol/nearcore/pull/1740中修复。

·在块生产中,如果在调用块生产功能时并非所有块都准备就绪,则可能会错误地删除块,该功能已在https://github.com/nearprotocol/nearcore/pull/1765中修复。

 

总体而言,本周的经验表明,我们的稳定性有所下降,主要是由于上周合并了新的代码。尽管在开发新功能的同时很难维持我们的代码稳定,但我们将集中精力提高更复杂测试范围,以确保新代码不会破坏系统。例如,我们现在已经建立了每晚测试基础架构,以便我们可以每晚运行昂贵的集成多节点来测试整个系统的稳定性。我们的目标是在接下来的几周内看到网络稳定性的稳定增长。

声明:本文为入驻“火星财经 专栏”作者作品,不代表火星财经官方立场。
转载请联系网页底部:内容合作栏目,邮件进行授权。授权后转载时请注明出处、作者和本文链接。未经许可擅自转载本站文章,将追究相关法律责任,侵权必究。
提示:投资有风险,入市须谨慎,本资讯不作为投资理财建议。
本内容旨在传递行业动态,不构成投资建议或承诺。
关键字:NEAR分片