Skip to content

Releases: nspcc-dev/neofs-node

v0.38.1

18 Sep 13:18
v0.38.1
c938228
Compare
Choose a tag to compare

A tiny fix for peapod-enabled nodes.

Fixed

  • Inability to start node with peapods configured (#2576)
  • neofs-adm morph set-config command error messages (#2556)

v0.38.0 - Gogado

13 Sep 15:54
v0.38.0
22559a9
Compare
Choose a tag to compare

A number of important fixes are brought by this release, including protocol ones (subnet and system EACL changes), as well as an updated storage subsystem and useful CLI updates making it more powerful and user-friendly at the same time.

Some previously deprecated configuration options were removed, so be careful and this is the last minor release to support the Blobovnicza tree storage subsystem. Starting with the next minor release, the component will be purged,so be prepared (see Updating section) and migrate to more efficient and simple Peapod.

Added

  • Embedded Neo contracts in contracts dir (#2391)
  • dump-names command for adm
  • renew-domain command for adm
  • Stored payload metric per container (#2116)
  • Stored payload metric per shard (#2023)
  • Histogram metrics for RPC and engine operations (#2351)
  • New storage component for small objects named Peapod (#2453)
  • New blobovnicza-to-peapod tool providing blobovnicza-to-peapod data migration (#2453)
  • SN's version and capacity is announced via the attributes automatically but can be overwritten explicitly (#2455, #602)
  • peapod command for neofs-lens (#2507)
  • New CLI exit code for awaiting timeout (#2380)
  • New CLI exit code for already removed objects (#2376)
  • Validation of excessive positional arguments to neofs-cli commands (#1941)
  • --lifetime flag to bearer create and object put CLI commands (#1574)
  • --expired-at flag to session create and storagegroup put CLI commands (#1574)
  • Sessions to RPC server running in IR's local consensus mode (#2532)
  • neofs-cli object nodes command to get SNs for an object (#2512)
  • Fetching container estimations via iterators to prevent NeoVM stack overflow (#2173)
  • neofs-adm morph netmap-candidates CLI command (#1889)
  • SN network validation (is available by its announced addresses) on bootstrap by the IR (#2475)
  • Display of container alias fee info in neofs-cli netmap netinfo (#2553)
  • neofs-lens storage inspect CLI command (#1336)
  • neofs-lens payload-only flag (#2543)
  • neofs-lens meta put CLI command (#1816)

Fixed

  • neo-go RPC connection loss handling (#1337)
  • Concurrent morph cache misses (#1248)
  • Double voting for validators on IR startup (#2365)
  • Skip unexpected notary events on notary request parsing step (#2315)
  • Session inactivity on object PUT request relay (#2460)
  • Missing connection retries on IR node startup when the first configured mainnet RPC node is not in sync (#2474)
  • Storage node no longer ignores unhealthy shards on startup (#2464)
  • Processing of status errors returned by API client from NeoFS SDK RC-9 (#2465)
  • neofs-lens write-cache list command duplication (#2505)
  • neofs-adm works with contract wallet in init and update-contracts commands only (#2134)
  • Missing removed but locked objects in SEARCH's results (#2526)
  • LOCK objects and regular objects expiration conflicts (#2392)
  • SN responds with a different node information compared to a bootstrapping contract call's argument (#2568)
  • neofs-cli object put command processes multiple --attributes flags (#2427)

Removed

  • Deprecated morph.rpc_endpoint SN and morph.endpoint.client IR config sections (#2400)
  • neofs_node_object_epoch metric for IR and SN (#2347)
  • Subnets support (#2411)
  • Logging utility completely replaced with zap.Logger (#696)
  • System eACL modification ability in the neofs-cli and IR (netmap candidate validation) (#2531)

Changed

  • CLI --timeout flag configures whole execution timeout from now (#2124)
  • CLI default timeout for commands with --await flag increased to 1m (#2124)
  • BlobStor tries to store object in any sub-storage with free space (#2450)
  • SN does not store container estimations in-mem forever (#2472)
  • CLI neofs-cli container set-eacl checks container's ownership (#2436)

Updated

  • neofs-sdk-go to v1.0.0-rc.11

Updating from v0.37.0

CLI command timeouts (flag --timeout) now limit the total command execution time and not single network operation. If any commands suddenly start to fail on timeout, try increasing the value, for example, twice. Also note that the execution of commands with the --await flag and without an explicitly specified time period is now limited to 1 minute. This value can be changed with--timeout flag.

Histogram (not counter) RPC/engine operation handling time metrics were added. For an old engine *operation_name*_duration a new *operation_name*_time is available.For an old *operation_name*_req_duration RPC a new rpc_*operation_name*_time is available. The old ones (the counters) have been deprecated and will be removed with the following minor release.

Container estimation main node calculation has been changed. A new 32-byte long array is taken as a sorting pivot: it is an estimated container with the first 8 bytes replaced with a target epoch in a little-endian encoding now.

Deprecated morph.rpc_endpoint SN and morph.endpoint.client IR configurations have been removed. Use morph.endpoints for both instead.

Deprecated neofs_node_object_epoch metric for IR and SN (the same for both) has been removed. Use neofs_node_state_epoch for SN and neofs_ir_state_epoch for IR instead.

Deprecated --no-precheck flag in neofs-cli container set-eacl use --force flag instead for skipping validation checks.

Subnets support has been removed:

  • IR's workers.subnet and contracts.subnet configs are not used anymore.
  • SN's node.subnet config section is not used anymore.
  • neoofs-amd morph does not have subnet subcommand anymore.
  • neofs-cli container create does not have --subnet flag anymore.

Docker images now contain a single executable file and SSL certificates only.

neofs-cli control healthcheck exit code is 0 only for "READY" state.

To migrate data from Blobovnicza trees to Peapods:

$ blobovnicza-to-peapod -config </path/to/storage/node/config>

For any shard, the data from the configured Blobovnicza tree is copied into a created Peapod file named peapod.db in the directory where the tree is located. For example, /neofs/data/blobovcniza/* -> /neofs/data/peapod.db. Notice that existing Blobovnicza trees are untouched. Configuration is also updated, for example, /etc/neofs/config.yaml -> /etc/neofs/config_peapod.yaml. WARN: carefully review the updated config before using it in the application!

To store small objects in more effective and simple sub-storage Peapod, replace blobovnicza sub-storage with the peapod one in blobstor config section. If storage node already stores some data, don't forget to make data migration described above.

v0.37.0 - Sogado

15 Jun 16:39
v0.37.0
04ce9e3
Compare
Choose a tag to compare

Added

  • neofs_[node|ir]_version with version label (#2326)
  • TLS RPC support for IR consensus mode (#2322)
  • Multiple neo-go RPC reconnection attempts with a delay (#2307)

Changed

  • NeoFS CLI generates random private key automatically if wallet is omitted (#2123)
  • morph.validators config can be omitted for IR in local consensus mode but must be non-empty otherwise (#2311)

Fixed

  • Inability to restore RPC connection after the second disconnect (#2325)
  • Tree service panics when cleaning up failed connections (#2335)
  • Dropping small objects on any error on write-cache side (#2336)
  • Iterating over just removed files by FSTree (#98)
  • IR metrics moved to neofs_ir namespace and epoch metrics to object subsystem (#2344)
  • IR metrics config reading (#2344)

Removed

  • Non-notary mode support for sidechain (#2321)
  • Priority switching b/w RPC endpoints in the morph client (#2306)
  • Support for binary keys in the CLI (#2357)

Updated

  • Update minimal supported Go version up to v1.18 (#2340)
  • tzhash library to 1.7.0 (#2348)
  • github.com/hashicorp/golang-lru to v2.0.2
  • neofs-sdk-go to v1.0.0-rc.8
  • BoltDB (go.etcd.io/bbolt) to 1.3.7

Updating from v0.36.1

  • neofs_node_object_epoch metric for IR and SN (the same for both) has been deprecated and will be removed with thenext minor release. Use neofs_node_state_epoch for SN and neofs_ir_state_epoch for IR instead.
  • Storage and Inner-ring nodes exposes their version via the neofs_[node|ir]_version metric now.
  • In the local consensus mode (IR) it is allowed to provide additional TLS setup addresses now, seemorph.consensus.rpc.tls section.
  • morph.switch_interval IR and SN config value is not used anymore.
  • morph.rpc_endpoint SN config value and morph.endpoint.client IR config value has been deprecated and will be removed with the next minor release. Use morph.endpoints for both instead (NOTE: it does not have priorities now).
  • If you're using binary keys with neofs-cli (-w), convert them to properNEP-6 wallets like this: $ xxd -p < path_to_binary.wallet # outputs hex-encoded key $ neofs-cli util keyer <hex_key> # outputs WIF $ neo-go wallet import -w <wallet_file> --wif <wif_key>or just generate/use new keys.
  • In local consensus mode morph.validators in IR's config can be omitted now, morph.consensus.committee will be used instead.For detached consensus, it is a required config parameter now.

v0.36.1

26 Apr 14:56
v0.36.1
2e5a9dd
Compare
Choose a tag to compare

Fixed

  • Storage node hanging after RPC disconnect (#2304)
  • Using deprecated NeoGo APIs (#2219, #2310)
  • Storage node panicking on exit (#2308)
  • Inner ring node panic on exit if internal CN is not enabled (#2308)
  • Typo in help message (#2240)

Removed

  • FallbackTime Morph client configuration option (#2310)

v0.36.0 - Gado

14 Apr 13:10
v0.36.0
6f7127a
Compare
Choose a tag to compare

A number of fixes and an internal CN for IR nodes. An update is recommended,data storage scheme is compatible with 0.35.0.

Added

  • Doc for extended headers (#2128)
  • Separate batching for replicated operations over the same container in pilorama (#1621)
  • object.delete.tombstone_lifetime config parameter to set tombstone lifetime in the DELETE service (#2246)
  • neofs-adm morph dump-hashes command now also prints NNS domain expiration time (#2295)
  • Launch mode of the Inner Ring with local consensus (#2194)

Changed

  • common.PrintVerbose prints via cobra.Command.Printf (#1962)
  • Storage node's replicator.put_timeout config default to 1m (#2227)
  • Full list of container is no longer cached (#2176)
  • Pilorama now can merge multiple batches into one (#2231)
  • Storage engine now can start even when some shard components are unavailable (#2238)
  • neofs-cli buffer for object put increased from 4 KiB to 3 MiB (#2243)
  • neofs-adm now reuses network's setting during contract update if they're not overriden by configuration (#2191)

Fixed

  • Pretty printer of basic ACL in the NeoFS CLI (#2259)
  • Failing SN and IR transactions because of incorrect scopes (#2230, #2263)
  • Global scope used for some transactions (#2230, #2263)
  • Potential data loss from nodes outside the container or netmap (#2267)
  • Invalid Inner Ring listing method through Netmap contract with notary Sidechain (#2283)
  • Divide-by-zero panic in Inner Ring's basic income distribution procedure (#2262)
  • Big object removal with non-local parts (#1978)
  • Disable pilorama when moving to degraded mode (#2197)
  • Fetching blobovnicza objects that not found in write-cache (#2206)
  • Do not search for the small objects in FSTree (#2206)
  • Correct status error for expired session token (#2207)
  • Restore subscriptions correctly on morph client switch (#2212)
  • Expired objects could be returned if not marked with GC yet (#2213)
  • neofs-adm morph dump-hashes now properly iterates over custom domain (#2224)
  • Possible deadlock in write-cache (#2239)
  • Fix *_req_count and *_req_count_success metric values (#2241)
  • Storage ID update by write-cache (#2244)
  • neo-go client deadlock on subscription (#2244, #2272)
  • Possible panic during write-cache initialization (#2234)
  • incorrect NNS resolve handling in neofs-adm (#2296)
  • Failed TestNet replication (#2288)

Updated

  • neo-go to v0.101.1 (some code also reworked to not use deprecated APIs)
  • github.com/klauspost/compress to v1.15.13
  • github.com/multiformats/go-multiaddr to v0.8.0
  • golang.org/x/term to v0.3.0
  • google.golang.org/grpc to v1.51.0
  • github.com/nats-io/nats.go to v1.22.1

Updating from v0.35.0

New experimental config field object.delete.tombstone_lifetime allows to settombstone lifetime more appropriate for a specific deployment.

v0.35.0 - Sindo (신도, 信島)

18 Jan 13:20
Compare
Choose a tag to compare

Added

  • morph list-containers in neofs-adm (#1689)
  • --binary flag in neofs-cli object put/get/delete commands (#1338)
  • session flag support to neofs-cli object hash (#2029)
  • Shard can now change mode when encountering background disk errors (#2035)
  • Background workers and object service now use separate client caches (#2048)
  • replicator.pool_size config field to tune replicator pool size (#2049)
  • Fix NNS hash parsing in morph client (#2063)
  • neofs-cli neofs-cli acl basic/extended print commands (#2012)
  • neofs_node_object_*_req_count_success prometheus metrics for tracking successfully executed requests (#1984)
  • Metric 'readonly' to get shards mode (#2022)
  • Tree service replication timeout (#2159)
  • apiclient.reconnect_timeout setting allowing to ignore failed clients for some time (#2164)

Changed

  • object lock command reads CID and OID the same way other commands do (#1971)
  • LOCK object are stored on every container node (#1502)
  • neofs-cli container get-eacl print ACL table in json format only with arg `--json' (#2012)
  • Side chain notary deposits use max uint32 as till parameter (#1486)
  • Allow object removal without linking object (#2100)
  • neofs-cli container delete command pre-checks container ownership (#2106)
  • Policer cache size is now 1024 (#2158)
  • Tree service now synchronizes with container nodes in a random order (#2127)
  • Pilorama no longer tries to apply already applied operations (#2161)
  • Use sync.Pool in Object.PUT service (#2139)
  • Shard uses metabase for HEAD requests by default, not write-cache (#2167)
  • Clarify help for --expire-at parameter for commands object lock/put and bearer create (#2097)
  • Node spawns GETRANGE requests signed with the node's key if session key was not found for RANGEHASH (#2144)

Fixed

  • Open FSTree in sync mode by default (#1992)
  • neofs-cli container nodes's output (#1991)
  • Increase error counter for write-cache flush errors (#1818)
  • Correctly select the shard for applying tree service operations (#1996)
  • Do not panic and return correct errors for bad inputs in GET_RANGE (#2007, #2024)
  • Physical child object removal by GC (#1699)
  • Broadcasting helper objects (#1972)
  • neofs-cli lock object's lifetime flag handling (#1972)
  • Do not move write-cache in read-only mode for flushing (#1906)
  • Child object collection on CLI side with a bearer token (#2000)
  • Fix concurrent map writes in Object.Put service (#2037)
  • Malformed request errors' reasons in the responses (#2028)
  • Session token's IAT and NBF checks in ACL service (#2028)
  • Losing meta information on request forwarding (#2040)
  • Assembly process triggered by a request with a bearer token (#2040)
  • Losing locking context after metabase resync (#1502)
  • Removing all trees by container ID if tree ID is empty in pilorama.Forest.TreeDrop (#1940)
  • Concurrent mode changes in the metabase and blobstor (#2057)
  • Panic in IR when performing HEAD requests (#2069)
  • Write-cache flush duplication (#2074)
  • Ignore error if a transaction already exists in a morph client (#2075)
  • ObjectID signature output in the CLI (#2104)
  • Pack arguments of setPrice invocation during contract update (#2078)
  • neofs-cli object hash panic (#2079)
  • Closing neo-go WS clients on shutdown and switch processes (#2080)
  • Making notary deposits with a zero GAS balance (#2080)
  • Notary requests on shutdown (#2075)
  • neofs-cli container create check the sufficiency of the number of nodes in the selector for replicas (#2038)
  • Data duplication during request forwarding (#2047)
  • Tree service panic on TreeMove operation (#2140)
  • Panic in GETRANGE with zero length (#2095)
  • Spawning useless GETRANGE with zero length for a big object (#2101)
  • Incomplete object put errors do contain the deepest error's message (#2092)
  • Prioritize internal addresses for clients (#2156)
  • Force object removal via control service (#2145)
  • Synchronizing a tree now longer reports an error for a single-node container (#2154)
  • Prevent leaking goroutines in the tree service (#2162)
  • Do not search for LOCK objects when delete container when session provided (#2152)
  • Race conditions on shard's mode switch (#1956)
  • Returning expired/removed objects from write-cache (#2016)

Removed

  • -g option from neofs-cli control ... and neofs-cli container create commands (#2089)
  • --header from neofs-cli object get (#2090)

Updated

  • neo-go to v0.100.0
  • spf13/cobra to v1.6.1
  • spf13/viper to v1.8.0
  • google.golang.org/grpc to v1.50.1

Updating from v0.34.0

Pass CID and OID parameters via the --cid and --oid flags, not as the command arguments.
Replicator pool size can now be fine-tuned with replicator.pool_size config field.The default value is taken from object.put.pool_size_remote as in earlier versions.
Added neofs_node_object_*_req_count_success metrics for tracking successfully executed requests.
neofs-cli container delete command now requires given account or session issuerto match the container owner. Use --force (-f) flag to bypass this requirement.
Tree service network replication can now be fine-tuned with tree.replication_timeout config field.

v0.34.0 - Marado (마라도, 馬羅島)

31 Oct 12:35
v0.34.0
Compare
Choose a tag to compare

Added

  • --timeout flag in neofs-cli control commands (#1917)
  • Document shard modes of operation (#1909)
  • tree list CLI command (#1332)
  • TreeService.GetTrees RPC (#1902)
  • All trees synchronization on bootstrap (#1902)
  • --force flag to neofs-cli control set-status command (#1916)
  • Logging SessionService.Create RPC on the server for debug (#1930)
  • Debian packages can now be built with make debpackage (#409)

Changed

  • Path to a metabase can now be reloaded with a SIGHUP (#1869)

Fixed

  • writecache.max_object_size is now correctly handled (#1925)
  • Correctly handle setting ONLINE netmap status after maintenance (#1922)
  • Correctly reset shard errors in ControlService.SetShardMode RPC (#1931)
  • Setting node's network state to MAINTENANCE while network settings forbid it (#1916)
  • Do not panic during API client creation (#1936)
  • Correctly sign new epoch transaction in neofs-adm for a committee of more than 4 nodes (#1949)
  • Inability to provide session to NeoFS CLI in a NeoFS-binary format (#1933)
  • neofs-adm now works correctly with a committee of more than 4 nodes (#1949, #1959)
  • Closing a shard now waits until GC background workers stop (#1964)
  • Make it possible to use shard.ContainerSize in read-only mode (#1975)
  • Storage node now starts if at least one gRPC endpoint is available (#1893)
  • Panic in API multy client (#1961)
  • Blobstor object removal log messages (#1953)
  • Missing object relatives in object removal session opened by NeoFS CLI (#1978)
  • Bringing a node back online during maintenance (#1900)

Updated

  • neo-go to v0.99.4
  • protoc to v3.21.7
  • neofs-sdk to v1.0.0-rc.7

Updating from v0.33.0

Now storage node serves Control API SetNemapStatus request with MAINTENANCEstatus only if the mode is allowed in the network settings. To force starting the localmaintenance on the node, provide --force flag to the neofs-cli control set-statuscommand.

v0.33.0 - Anmado (안마도, 鞍馬島)

17 Oct 16:44
v0.33.0
Compare
Choose a tag to compare

Added

  • Serving NetmapService.NetmapSnapshot RPC (#1793)
  • netmap snapshot command of NeoFS CLI (#1793)
  • apiclient.allow_external config flag to fallback to node external addresses (#1817)
  • Support MAINTENANCE state of the storage nodes (#1680, #1681)
  • Changelog updates CI step (#1808)
  • Validate storage node configuration before node startup (#1805)
  • neofs-node -check command to check the configuration file (#1805)
  • flush-cache control service command to flush write-cache (#1806)
  • wallet-address flag in neofs-adm morph refill-gas command (#1820)
  • Validate policy before container creation (#1704)
  • --timeout flag in neofs-cli subcommands (#1837)
  • container nodes command to output list of nodes for container, grouped by replica (#1704)
  • Configuration flag to ignore shard in neofs-node (#1840)
  • Add new RPC TreeService.Healthcheck
  • Fallback to GET if GET_RANGE from one storage nodes to another is denied by basic ACL (#1884)
  • List of shards and logger level runtime reconfiguration (#1770)
  • neofs-adm morph set-config now supports well-known MaintenanceModeAllowed key (#1892)
  • add, get-by-path and add-by-path tree service CLI commands (#1332)

Changed

  • Allow to evacuate shard data with EvacuateShard control RPC (#1800)
  • Flush write-cache when moving shard to DEGRADED mode (#1825)
  • Make morph.cache_ttl default value equal to morph block time (#1846)
  • Policer marks nodes under maintenance as OK without requests (#1680)
  • Unify help messages in CLI (#1854)
  • evacuate, set-mode and flush-cache control subcommands now accept a list of shard ids (#1867)
  • Reading object commands of NeoFS CLI don't open remote sessions (#1865)
  • Use hex format to print storage node ID (#1765)

Fixed

  • Description of command netmap nodeinfo (#1821)
  • Proper status for object.Delete if session token is missing (#1697)
  • Fail startup if metabase has an old version (#1809)
  • Storage nodes could enter the network with any state (#1796)
  • Missing check of new state value in ControlService.SetNetmapStatus (#1797)
  • Correlation of object session to request (#1420)
  • Do not increase error counter in engine.Inhume if shard is read-only (#1839)
  • control drop-objects can remove split objects (#1830)
  • Node's status in neofs-cli netmap nodeinfo command (#1833)
  • Child check in object assembly process of ObjectService.Get handler (#1878)
  • Shard ID in the object counter metrics (#1863)
  • Metabase migration from the first version (#1860)

Removed

  • Remove WIF and NEP2 support in neofs-cli's --wallet flag (#1128)
  • Remove --generate-key option in neofs-cli container delete (#1692)
  • Serving ControlService.NetmapSnapshot RPC (#1793)
  • control netmap-snapshot command of NeoFS CLI (#1793)

Updated

  • neofs-contract to v0.16.0
  • neofs-api-go to v2.14.0

Updating from v0.32.0

Replace using the control netmap-snapshot command with netmap snapshot one in NeoFS CLI.
Node can now specify additional addresses in ExternalAddr attribute. To allow a node to dial
other nodes external address, use apiclient.allow_external config setting.
Add --force option to skip placement validity check for container creation.

Pass maintenance state to neofs-cli control set-status to enter maintenance mode.
If network allows maintenance state (*), it will be reflected in the network map.
Storage nodes under maintenance are not excluded from the network map, but don't
serve object operations. (*) can be fetched from network configuration via
neofs-cli netmap netinfo command.

To allow maintenance mode during neofs-adm deployments, set
network.maintenance_mode_allowed parameter in config.

When issuing an object session token for root (virtual, "big") objects,
additionally include all members of the split-chain. If session context
includes root object only, it is not spread to physical ("small") objects.

neofs-node configuration now supports mode: disabled flag for a shard.
This can be used to temporarily ignore shards without completely removing them
from the config file.

v0.32.0 - Pungdo (풍도, 楓島)

14 Sep 15:22
Compare
Choose a tag to compare

Added

  • Objects counter metric (#1712)
  • meta subcommand to neofs-lens (#1714)
  • Storage node metrics with global and per-shard object counters (#1658)
  • Removal of trees on container removal (#1630)
  • Logging new epoch events on storage node (#1763)
  • Timeout for streaming RPC (#1746)
  • neofs-adm is now able to dump hashes from a custom zone (#1748)
  • Empty filename support in the Tree Service (#1698)
  • Flag to neofs-cli container list-objects command for attribute printing (#1649)

Changed

  • neofs-cli object put's object ID output has changed from "ID" to "OID" (#1296)
  • neofs-cli container set-eacl command now pre-checks container ACL's extensibility (#1652)
  • Access control in Tree service (#1628)
  • Tree service doesn't restrict depth in rpc GetSubTree (#1753)
  • neofs-adm registers contract hashes in both hex and string address formats (#1749)
  • Container list cache synchronization with the Sidechain (#1632)
  • Blobstor components are unified (#1584, #1686, #1523)

Fixed

  • Panic on write-cache's Delete operation (#1664)
  • Payload duplication in neofs-cli storagegroup put (#1706)
  • Contract calls in notary disabled environments (#1743)
  • Blobovnicza.Get op now iterates over all size buckets (#1707)
  • Object expiration time (#1670)
  • Parser of the placement policy (#1775)
  • Tree service timeout logs (#1759)
  • Object flushing on writecache side (#1745)
  • Active blobovniczas caching (#1691)
  • neofs-adm TX waiting (#1738)
  • neofs-adm registers contracts with a minimal GAS payment (#1683)
  • Permissions of the file created by neofs-cli (#1719)
  • neofs-adm creates TX with a high priority attribute (#1702)
  • Storage node's restart after a hard reboot (#1647)

Updated

  • neo-go to v0.99.2
  • nspcc-dev/neofs-contract to v0.15.5
  • prometheus/client_golang to v1.13.0
  • google.golang.org/protobuf to v1.28.1

Updating from v0.31.0

Storage Node now collects object count prometheus metrics: neofs_node_object_counter.

Provide --no-precheck flag to neofs-cli container set-eacl for unconditional sending of a request(previous default behavior).

Blobstor's configuration from now supports different storage types, see shard configuration example.

v0.31.0 - Baengnyeongdo (백령도, 白翎島)

04 Aug 14:18
v0.31.0
Compare
Choose a tag to compare

Added

  • neofs-adm allows deploying arbitrary contracts (#1629)

Changed

  • Priority order in the Morph client (#1648)

Fixed

  • Losing request context in eACL response checks (#1595)
  • Do not return expired objects that have not been handled by the GC yet (#1634)
  • Setting CID field in neofs-cli acl extended create (#1650)
  • neofs-ir no longer hangs if it cannot bind to the control endpoint (#1643)
  • Do not require lifetime flag in session create CLI command (#1655)
  • Using deprecated gRPC options (#1644)
  • Increasing metabase error counter on disabled pilorama (#1642)
  • Deadlock in the morph client related to synchronous notification handling (#1653)
  • Slow metabase COMMON_PREFIX search for empty prefix (#1656)

Removed

  • Deprecated profiler and metrics configuration sections (#1654)

Updated

  • chzyer/realine to v1.5.1
  • google/uuid to v1.3.0
  • nats-io/nats.go to v1.16.0
  • prometheus/client_golang to v1.12.2
  • spf13/cast to v1.5.0
  • spf13/viper to v1.12.0
  • go.uber.org/zap to v1.21.0
  • google.golang.org/grpc to v1.48.0

Updating from v0.30.0

  1. Change morph.endpoint.client priority values using the following rule:
    the higher the priority the lower the value (non-specified or 0 values are
    interpreted as the highest priority -- 1).
  2. Deprecated profiler and metrics configuration sections are dropped,
    use pprof and prometheus instead.