NATS
v2.14.7Networking & MessagingSep 15, 2026
A maintenance release focused on JetStream compatibility, performance improvements, and correctness fixes. It also updates the toolchain and dependencies, with no stated operator-breaking changes.
All 26 other recorded changesfixes 20 · value changes 5 · additions 1
fixes (20)
- - The
{{left}}and{{right}}mapping functions now work correctly in account mappings and source/mirror transforms (#8568) - - 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_thresholdis 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)
value changes (5)
- - 1.26.8 (#8551)
- - Reduced lock contention that could arise from tracking event IDs or closed connections (#8533)
- - 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)
additions (1)
- - Compatibility for the new desired state metalayer, introduced in v2.15, to support safe upgrades and downgrades (#8554)
Add NATS to your stack
A weekly email arrives when a release needs action. Weeks with nothing to act on, like this one, send no email.