Neo SPCC has revealed a coordinated launch of NeoFS releases, beginning with NeoFS Node v0.51.0. This allows protocol-level modifications resembling introducing mutable NEP-11 containers, synchronous container operations, and session token v2. The included NeoFS SDK Go v1.0.0-rc.17 gives the underlying library help for these options, and XK6-NeoFS v0.2.1 brings stability fixes and dependency upgrades to the load testing extension. The TestNet improve is full and MainNet will comply with within the coming days.
NeoFS Node v0.51.0
The NeoFS Node v0.51.0 launch consists of quite a lot of necessary protocol modifications. Containers at the moment are represented as mutable NEP-11 tokens on-chain, and each storage nodes and inside ring nodes help new container contract strategies, together with: createV2 and getInfoand attribute administration strategies setAttribute and removeAttributegives a richer on-chain container administration API. The corresponding CLI instructions for setting and eradicating attributes are container part.
Container operation Put, Deleteand SetExtendedACL is now processed synchronously by the storage node, changing the earlier asynchronous stream. This variation simplifies client-side logic by eliminating the necessity for polling and ready for eventual consistency. You may as well lock a container in order that it can’t be deleted. __NEOFS__LOCK_UNTIL Attribute, storage node returns new attribute CONTAINER_LOCKED Standing when making an attempt to delete a locked container.
Session token v2 is launched throughout the stack. Each inside ring nodes and storage nodes now settle for new token codecs for container and object operations, and new CLI instructions can be found to generate v2 tokens. Lock and tombstone objects utilizing API variations older than 2.18 are now not accepted.
When it comes to efficiency, metabase optimizations pace up object deletion by remodeling the locking info scheme and eradicating the standard graveyard construction. Object service enhancements particularly goal erasure-coded containers. EC elements are co-located, shard ordering is constant between reads and writes, and uncooked information requests are supported within the EC container. Continuation of RANGE requests in multi-rule EC eventualities was additionally mounted. acquisition of $LINK Objects in EC containers at the moment are supported, and sized objects are $LINK Object is unavailable. Object to shard placement has been optimized in order that objects requested for deletion by way of the management service are instantly deleted as an alternative of being queued for rubbish assortment.
A number of deprecated inner ring configuration choices have been eliminated. fschain_autodeploy, without_mainnet, governance.disable, price.main_chainand contracts. Node operators upgrading from v0.50.2 should take away these choices from the IR configuration file, as their presence prevents the node from beginning. Computerized metabase migration from variations 3 and 4 has additionally been eliminated. Operators nonetheless utilizing these variations ought to resync or migrate utilizing NeoFS Node v0.50.2 earlier than upgrading.
Bug fixes deal with inside ring panic throughout swish shutdown, incorrect IR node listing storage by way of netmap contract as an alternative of RoleManagement, impasse on storage node termination in uncommon rubbish assortment eventualities, and expired EC elements incorrectly endured on storage nodes.
NeoFS SDK Go v1.0.0-rc.17
The SDK launch gives a library-level basis for protocol modifications in Node v0.51.0 and is suitable with NeoFS API 2.21. Session token v2 help is absolutely applied, permitting purchasers to create and use new token codecs for each container and object operations.
The brand new container attribute administration API introduces strategies for setting and eradicating container attributes, together with a set of latest well-known attribute names. The container API itself is synchronized as node conduct modifications. Connection swimming pools now use a sliding window for error counts, bettering load balancing selections below intermittent failure situations.
The thing creation API has been refactored to: object.New It’s extra specialised in creating new objects, and is extra specialised in creating new objects than earlier InitCreation Technique has been eliminated. A 3-way comparability methodology has been added to the OID, CID, and Tackle sorts, offering extra expressive sorting and ordering operations.
This launch additionally fixes incorrect standing dealing with for incomplete responses and updates NeoGo dependencies to v0.116.0.
XK6-NeoFS v0.2.1
The NeoFS load testing extension for k6 receives a upkeep launch that addresses stability and equity. A panic that occurred throughout S3 testing has been resolved and a false checksum warning that seems throughout take a look at runs has been eradicated.
Load distribution between goal nodes is now fairer, decreasing the impression of hotspots throughout benchmark execution. Construct necessities have been elevated to Go 1.24, and dependencies have been up to date throughout the board, together with the NeoFS SDK Go to v1.0.0-rc.17, the AWS SDK to v1.39.0, and the k6 framework itself from v0.51.0 to v1.3.0.
Improve steerage
Node operators ought to comply with the TestNet improve and put together for the anticipated MainNet deployment quickly. Inside Ring operators ought to audit their configuration recordsdata and take away the deprecated choices listed above earlier than upgrading to v0.51.0. Storage node operators nonetheless operating metabase model 3 or 4 should full their migration by way of v0.50.2 earlier than this improve as a result of the automated migration path has been eliminated.
The whole changelog and launch property can be found on the hyperlink beneath.
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

