Changelog
Go Version
- 1.16.3: Both release executables and Docker images are built with this Go release.
Added
- Ability to set a timeout to NATS resolver (#2057)
Changed
JetStreamVarz
fields from structures to pointers so they can be omitted if empty. This is may affect users that embed the NATS Server in their code (#2009)
Improved
- Error log statement when an account registration fails (#2016)
- JetStream:
Fixed
- JetStream:
- Possible panic when consumers are stopped (#2008)
- Panic on 32bit systems due to unaligned 64-bit atomic operations. Thanks to @GuangchaoDeng for the report (#2012)
- Check for filter subject correctness of an upstream stream's mirror or source (#2013)
- Reduce memory pressure and protect against some nil dereferences (#2015)
- Mirror streams were not properly retrying after failures to create their internal consumer (#2017)
- Prevent suppression of idle heartbeats for a filtered consumer on a busy stream (#2018)
- Some updates for direct consumers (used for mirrors and sources streams) (#2021)
- Possible double adds under reload or restart scenarios (#2023)
- In operator mode, JetStream accounts were not all loaded on startup (#2024)
- Consumer interest dropping and coming back across gateways (#2024)
- Leaked subscriptions when retrying to create streams' source consumers (#2024)
- Idle heartbeats were unnecessarily sent when a consumer was known to be active (#2024)
- Performance degradation for mirrors and sources in presence of gaps (#2025)
- Reworked sources and mirrors on missed data (#2026)
- Reduce sliding window for direct consumers and catchup stream windows (#2027)
- Flow control with multiple sources streams (#2028)
- Chaining of sources and mirrors with filtered consumers (#2028)
- General stability improvements (#2033)
- Possible deadlock (#2034)
- Panic when WAL was corrupted (#2045)
- Prevent bad stream updates from deleting the stream (#2045)
- When a request to get a message fails, returns code 404, instead of 500 (#2053)
- Possible deadlock caused by an account lookup failure when processing a consumer assignment (#2054)
- Consumer state (ack floor/pending or number of pending messages) could be skewed after server restarts (#2058)
- LeafNode:
- MQTT:
- Fix a possible subscription leak in setup failure conditions (#2061)
- Websocket:
- Possible empty frames sent to webbrowser clients (#2040)
- Account connection events were not sent when using custom authentication (#2020)
- Disconnect clients for account JWT that has been disabled (#2048)