github nats-io/nats-server v2.14.7
Release v2.14.7

latest release: v2.15.0-RC.2
6 hours ago

Changelog

Refer to the 2.14 Upgrade Guide for backwards compatibility notes with 2.12.x. Please note that the 2.13.x version was skipped.

Go Version

Dependencies

  • github.com/antithesishq/antithesis-sdk-go v0.8.0-default-no-op (#8562)
  • github.com/klauspost/compress v1.20.0 (#8562)
  • golang.org/x/crypto v0.57.0 (#8597)
  • golang.org/x/sys v0.48.0 (#8597)
  • golang.org/x/time v0.16.0 (#8597)

Added

JetStream

  • Compatibility for the new desired state metalayer, introduced in v2.15, to support safe upgrades and downgrades (#8554)

Improved

General

  • The fastrand and math/rand packages have been replaced with math/rand/v2 (#8538, #8557)
  • Reduced lock contention that could arise from tracking event IDs or closed connections (#8533)

JetStream

  • When syncing deletes from a snapshot, block removals are now aggregated, reducing pending calculations (#8545)
  • Message size checks are now performed before more expensive header checks (#8561)
  • Pending calculations are now considerably faster when the max messages per subject limit is 1 (#8567)

Fixed

General

  • The {{left}} and {{right}} mapping functions now work correctly in account mappings and source/mirror transforms (#8568)

JetStream

  • A potential underflow when calculating deletes in skip messages has been fixed (#8546)
  • Fixed an issue where catchup signals to the metalayer are blocked, which could stall stream or cluster management operations until the node is restarted (#8555)
  • Consumer removal is now handled correctly after a recreate during metalayer recovery at startup (#8556)
  • Fixed a potential panic that could happen when filestore block caches were released during message removal (#8548)
  • The last dedupe message ID is now restored correctly if the last message was outside of the window after restart (#8564)
  • An unreachable send snapshot condition has been removed from the stream monitor (#8565)
  • Pull request expiry is now counted as activity when inactive_threshold is set (#8575)
  • Purges and roll-ups on multi-filter subject consumers will no longer advance past unrelated subjects (#8572)
  • Filestore compression header checking is now extended to check for compatible compression values and for the presence of correct or incorrect first record checksums, avoiding collisions at the beginning of a message block (#8581)
  • JetStream usage from peer-removed nodes is now removed from the remaining cluster node accounting correctly (#8570)
  • Fixed a data race between deduplication tracking and stream config updates (#8598)
  • Fixed a potential nil consumer info when responding to consumer reset requests (#8598)
  • Stream catchups will no longer run for removed or re-synced peers (#8598)
  • Fixed a race condition that could leave ghost consumer assignments when deleting consumers (#8598)
  • Pausing a consumer with pending changes no longer cancels out the in-flight assignment (#8598)
  • Stepping down a consumer leader with pending changes no longer fails (#8598)
  • Switching a stream to interest retention policy with no consumers now correctly cleans up messages with no interest (#8598)
  • Fixed an issue where removed consumers were incorrectly matched without checking the group name (#8598)
  • A number of stream and consumer endpoints will no longer report the wrong state based on in-flight proposals (#8598)

Complete Changes

v2.14.6...v2.14.7

Don't miss a new nats-server release

NewReleases is sending notifications on new releases.