Neo SPCC 发布了 NeoFS Node v0.51.0、SDK Go RC17 和 XK6 v0.2.1,其中包含协议更新。

本文为机器翻译
展示原文

Neo SPCC 发布了一系列 NeoFS 更新,其中以 NeoFS Node v0.51.0 为首,该版本带来了一系列协议层面的改进,包括可变 NEP-11 容器、同步容器操作以及会话令牌 v2 的引入。配套的 NeoFS SDK Go v1.0.0-rc.17 为这些特性提供了底层库支持,而 XK6-NeoFS v0.2.1 则修复了负载测试扩展的稳定性问题并升级了其依赖项。测试网升级已完成,主网预计在未来几天内完成升级。

NeoFS 节点 v0.51.0

NeoFS Node v0.51.0 版本带来了一系列重要的协定变更。容器现在以链上可变的 NEP-11 代币形式表示,储存节点和内环节点均支援新的容器合约方法,包括createV2getInfo ,以及属性管理方法setAttributeremoveAttribute ,从而提供更丰富的链上容器管理 API。用于设定和删除属性的相应 CLI 命令已新增至container部分。

储存节点现在同步处理容器的PutDeleteSetExtendedACL操作,取代了先前的非同步流程。此变更简化了客户端逻辑,无需轮询或等待最终一致性。此外,也可以透过设定__NEOFS__LOCK_UNTIL属性来锁定容器,防止其删除。当尝试删除已锁定的容器时,储存节点将传回新的CONTAINER_LOCKED状态。

会话令牌 v2 已在整个技术堆叠中引入。内环节点和储存节点现在都支援用于容器和物件操作的新令牌格式,并且新增了一个用于产生 v2 令牌的 CLI 命令。不再接受使用低于 2.18 版本 API 的锁定物件和墓碑物件。

在效能方面,元资料库优化透过重构锁定资讯方案并移除旧版的「墓地」结构,实现了更快的物件删除速度。物件服务的改进专门针对纠删码容器:纠删码元件现在可以并发放置,读写操作的分片顺序保持一致,并且支援在纠删码容器中请求原始资料。此外,也修正了多规则纠删码场景下的 RANGE 请求延续问题。现在支援在纠删码容器中检索$LINK对象,即使$LINK物件不可用,依大小分割的物件仍然可用。物件到分片的放置也得到了最佳化,透过控制服务请求删除的物件现在会立即删除,而无需排队等待垃圾回收。

多个已弃用的内环设定选项已移除,包括fschain_autodeploywithout_mainnetgovernance.disablefee.main_chaincontracts 。从 v0.50.2 版本升级的节点运营商必须从其内环配置档案中移除这些选项,因为它们的存在会导致节点无法启动。此外,从版本 3 和版本 4 的自动元资料库迁移功能也已移除;仍在使用这些版本的业者应在升级前使用 NeoFS Node v0.50.2 进行重新同步或迁移。

错误修复解决了优雅关闭期间的内环崩溃、通过 netmap 合约而不是 RoleManagement 错误地存储 IR 节点列表、在罕见的垃圾回收场景中存储节点退出时的死锁以及过期的 EC 部件错误地持久化在存储节点上等问题。

NeoFS SDK Go v1.0.0-rc.17

SDK 版本为 Node v0.51.0 中的协定变更提供了函式库级基础,并且与 NeoFS API 2.21 相容。会话令牌 v2 支援已完全实现,使用户端能够建立和使用新的令牌格式进行容器和物件操作。

新的容器属性管理 API 引入了设定和移除容器属性的方法,以及一组新的常用属性名称。容器 API 本身已实作同步,与节点的行为变更保持一致。连接池现在使用滑动视窗进行错误计数,从而在间歇性故障情况下改善负载平衡决策。

物件建立 API 已重构,使得object.New更适合建立新对象,并且移除了先前的InitCreation方法。此外,还为 OID、CID 和 Address 类型添加了三向比较方法,从而提供了更丰富的排序和排序操作。

此版本还修正了对不完整回应的错误状态处理,并将 NeoGo 依赖项更新至 v0.116.0。

XK6-NeoFS v0.2.1

针对 k6 的 NeoFS 负载测试扩充功能发布了维护版本,主要针对稳定性和公平性进行了最佳化。修正了 S3 测试期间触发的 panic 问题,并消除了测试执行过程中出现的错误校验和警告。

现在目标节点间的负载分布更加平衡,从而减少了基准测试运行期间的热点效应。建置需求已提升至 Go 1.24,且所有相依性都已更新,包括 NeoFS SDK 的 Go 版本升级至 v1.0.0-rc.17,AWS SDK 升级至 v1.39.0,以及 k6 框架本身从 v0.51.0 升级至 v1.3.0。

升级指南

节点运营商应遵循测试网升级流程,并为即将进行的主网部署做好准备。内环运营商必须审核其配置文件,并在升级到 v0.51.0 之前移除上述已弃用的选项。仍在运行 Metabase 版本 3 或 4 的储存节点营运商应在此次升级之前透过 v0.50.2 完成迁移,因为自动迁移路径已被移除。

完整的更新日志和发布资源可在以下连结中找到:

https://github.com/nspcc-dev/neofs-node/releases/tag/v0.51.0
https://github.com/nspcc-dev/neofs-sdk-go/releases/tag/v1.0.0-rc.17
https://github.com/nspcc-dev/xk6-neofs/releases/tag/v0.2.1

来源
免责声明:以上内容仅为作者观点,不代表Followin的任何立场,不构成与Followin相关的任何投资建议。
喜欢
76
收藏
16
评论