NATS - v2.10.5


Changelog

Refer to the 2.10 Upgrade Guide for backwards compatibility notes with 2.9.x.

Go Version

  • 1.21.4

Dependencies

  • golang.org/x/crypto v0.15.0
  • golang.org/x/sys v0.14.0
  • golang.org/x/time v0.4.0
  • github.com/nats-io/jwt/v2 v2.5.3

Improved

General
- Remove places where using time.After could cause GC pressure (#4756)

JetStream
- Remove unused Observer const, add unit test to check observer applies (#4727)
- Throttle writeFullState from separate goroutine (#4731)
- Reduce memory usage with lots of subjects in filestore (#4742)
- Resiliency when doing lots of conditional updates to a KV and restarting servers (#4764)
- ​​General stability and consistency improvements for clustered streams with failure offsets during server restarts (#4777)
- Improve code comments for Raft subsystem (#4724)
- Optimize linear scan when looking by comparing the first seq in a block (#4780)
- Move filestore cleanup to separate goroutine to make non-blocking (#4782)
- Move deletion of filestore files to separate goroutine to make non-blocking (#4783)

Monitoring
- Better check for standalone mode when determining to send statsz (#4757)

MQTT
- Add "clean" flag in trace message (#4740)

WebSocket
- ​​Check for /leafnode suffix path on leaf WebSocket connection (#4774)

Fixed

Accounts
- Fix panic in JWT permissions template handling (#4730)

Leafnode
- Fix subpath concatenation used for WebSocket remote connect URL (#4770) Thanks to @yoadey for the report!

JetStream
- Remove the state check in the runAs loops except for runAsLeader (#4725)
- Make sure to properly remove meta files for filestore after conversion from 2.9.x to 2.10.x (#4733)
- Make sure we check limits when scaling up a stream (#4738)
- Improve estimation on full state allocations to avoid reallocations in filestore (#4743)
- Make access to message block first and last sequence consistently use atomics (#4744)
- Fix DiscardNew exceed bytes calculation (#4772) Thanks to @MauriceVanVeen for the contribution! Thanks to @davidmcote for the report!
- Fix data race and possible panic when compacting (#4773, #4776)
- Fix panic in fileStore.Stop() (#4779)

MQTT
- Rapid load-balanced (re-)CONNECT to cluster causes races (#4734)
- Potential deadlock between JS API and mqttDeliverMsgCbQoS0 (#4760)

WebSocket
- Partial writes may lead to disconnect (#4755)

Complete Changes

https://github.com/nats-io/nats-server/compare/v2.10.4...v2.10.5


Details

date
Nov. 9, 2023, 9:39 p.m.
name
Release v2.10.5
type
Patch
👇
Register or login to:
  • 🔍View and search all NATS releases.
  • 🛠️Create and share lists to track your tools.
  • 🚨Setup notifications for major, security, feature or patch updates.
  • 🚀Much more coming soon!
Continue with GitHub
Continue with Google
or