Releases: nats-io/nats-server
Release v2.10.22
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.8
Dependencies
- golang.org/x/crypto v0.28.0 (#5971)
- golang.org/x/sys v0.26.0 (#5971)
- golang.org/x/time v0.7.0 (#5971)
- go.uber.org/automaxprocs v1.6.0 (#5944)
- github.com/klauspost/compress v1.17.11 (#6002)
Added
Config
- A warning will now be logged at startup if the JetStream store directory appears to be in a temporary folder (#5935)
Improved
General
- More efficient searching of sublists for the number of subscriptions (#5918)
JetStream
- Improve performance when checking interest and correcting ack state on interest-based or work queue streams (#5963)
- Safer default file permissions for JetStream filestore and logs (#6013)
Fixed
JetStream
- Large number of message delete tombstones will no longer result in unusually large message blocks on disk (#5973)
- The server will no longer panic when restoring corrupted subject state containing null characters (#5978)
- A data race when processing append entries has been fixed (#5970)
- Fix a stream desync across replicas that could occur after stalled or failed catch-ups (#5939)
- Consumers will no longer race with the filestore when fetching messages, fixing some cases where consumers can get stuck with workqueue streams and max messages per subject limits (#6003)
- Pull consumers will now recalculate max delivered when expiring messages, such that the redelivered status does not report incorrectly and cause a stall with a max deliver limit (#5995)
- Clustered streams should no longer desync if a catch-up fails due to a loss of leader (#5986)
- Fixed a panic that could occur when calculating asset placement in a JetStream cluster (#5996)
- Fixed a panic when shutting down a clustered stream (#6007)
- Revert earlier PR #5785 to restore consumer start sequence clipping, fixing an issue where sourcing/mirroring consumers could skip messages (#6014)
Leafnodes
- Load balancing of queue groups over leafnode connections (#5982)
Complete Changes
Release v2.10.22-RC.3
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.8
Dependencies
- github.com/klauspost/compress v1.17.11 (#6002)
Fixed
JetStream
- Consumers will no longer race with the filestore when fetching messages, fixing some cases where consumers can get stuck with workqueue streams and max messages per subject limits (#6003)
- Pull consumers will now recalculate max delivered when expiring messages, such that the redelivered status does not report incorrectly and cause a stall with a max deliver limit (#5995)
- Clustered streams should no longer desync if a catch-up fails due to a loss of leader (#5986)
- Fixed a panic that could occur when calculating asset placement in a JetStream cluster (#5996)
- Fixed a panic when shutting down a clustered stream (#6007)
Complete Changes
Release v2.10.22-RC.2
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.8
Improved
General
- More efficient searching of sublists for the number of subscriptions (#5918)
Fixed
Leafnodes
- Load balancing of queue groups over leafnode connections (#5982)
Complete Changes
Release v2.10.22-RC.1
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.7
Dependencies
- golang.org/x/crypto v0.28.0 (#5971)
- golang.org/x/sys v0.26.0 (#5971)
- golang.org/x/time v0.7.0 (#5971)
- github.com/klauspost/compress v1.17.10 (#5945)
- go.uber.org/automaxprocs v1.6.0 (#5944)
Added
Config
- A warning will now be logged at startup if the JetStream store directory appears to be in a temporary folder (#5935)
Improved
JetStream
- Improve performance when checking interest and correcting ack state on interest-based or work queue streams (#5963)
Fixed
JetStream
- Large number of message delete tombstones will no longer result in unusually large message blocks on disk (#5973)
- The server will no longer panic when restoring corrupted subject state containing null characters (#5978)
- A data race when processing append entries has been fixed (#5970)
- Fix a stream desync across replicas that could occur after stalled or failed catch-ups (#5939)
Complete Changes
Release v2.10.21
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.7
Dependencies
Added
Config
- New TLS
min_version
option for configuring the minimum supported TLS version (#5904)
Improved
JetStream
- Global JetStream API queue hard limit for protecting the system (#5900, #5923)
- Orphaned ephemeral consumer clean-up is now logged at debug level only (#5917)
Monitoring
statsz
messages are now sent every 10 seconds instead of every 30 seconds (#5925)- Include JetStream pending API request count in
statsz
messages andjsz
responses for monitoring (#5923, #5926)
Fixed
JetStream
- Fix an issue comparing the stream configuration with the updated stream assignment on stream create (#5854)
- Improvements to recovering from old or corrupted
index.db
(#5893, #5901, #5907) - Ensure that consumer replicas and placement are adjusted properly when scaling down a replicated stream (#5927)
- Fix a panic that could occur when trying to shut down while the JetStream meta group was in the process of being set up (#5934)
Monitoring
- Always update account issuer in
accountsz
(#5886)
OCSP
- Fix peer validation on the HTTPS monitoring port when OCSP is enabled (#5906)
Config
- Support multiple trusted operators using a config file (#5896)
Complete Changes
Release v2.10.21-RC.4
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.7
Improved
Monitoring
statsz
messages are now sent every 10 seconds instead of every 30 seconds (#5925)- Include JetStream pending API request count in
statsz
messages andjsz
responses for monitoring (#5923, #5926)
Fixed
JetStream
- Ensure that consumer replicas and placement are adjusted properly when scaling down a replicated stream (#5927)
Complete Changes
Release v2.10.21-RC.3
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.7
Improved
JetStream
- Orphaned ephemeral consumer clean-up is now logged at debug level only (#5917)
Complete Changes
Release v2.10.21-RC.2
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.7
Added
Config
- New TLS
min_version
option for configuring the minimum supported TLS version (#5904)
JetStream
- Global JetStream API queue limiting for protecting the system (#5900)
OCSP
- Allow HTTPS monitoring port when OCSP enabled (#5906)
Fixed
JetStream
- Recover old
index.db
when not using the max messages per subject limits (#5901) - Rebuild the state if additional blocks are found after the last block recorded in
index.db
(#5907)
Complete Changes
Release v2.10.21-RC.1
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.7
Dependencies
golang.org/x/crypto v0.27.0 (#5869)
golang.org/x/sys v0.25.0 (#5869)
Fixed
JetStream
- Fix reflect.DeepEqual both receiving pointers on stream create (#5854)
- Improvements to dealing with old or non-existent index.db (#5893)
Monitoring
- Always update account issuer in accountsz (#5886)
Config
- Support multiple trusted operators using a config file (#5896)
Complete Changes
Release v2.10.20
Changelog
Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.
Go Version
- 1.22.6
Fixed
JetStream
- Fix regression in KV CAS operations on R=1 replicas introduced in v2.10.19 (#5841) Thanks to @cbrewster for the report!