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
- 1.26.8 (#8551)
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.56.0 (#8562)
Added
JetStream
- Compatibility for the new desired state metalayer, introduced in v2.15, to support safe upgrades and downgrades (#8554)
Improved
General
- The
fastrandandmath/randpackages have been replaced withmath/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_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)