giantswarm / aws-operator

Manages Kubernetes clusters running on AWS (before Cluster API)
https://www.giantswarm.io/
Apache License 2.0
131 stars 22 forks source link

Update module github.com/nats-io/nats-server/v2 to v2.10.21 #3750

Open renovate[bot] opened 6 months ago

renovate[bot] commented 6 months ago

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
github.com/nats-io/nats-server/v2 v2.10.12 -> v2.10.21 age adoption passing confidence

Release Notes

nats-io/nats-server (github.com/nats-io/nats-server/v2) ### [`v2.10.21`](https://redirect.github.com/nats-io/nats-server/releases/tag/v2.10.21) [Compare Source](https://redirect.github.com/nats-io/nats-server/compare/v2.10.20...v2.10.21) #### Changelog Refer to the [2.10 Upgrade Guide](https://docs.nats.io/release-notes/whats_new/whats_new\_210) for backwards compatibility notes with 2.9.x. ##### Go Version - 1.22.7 ##### Dependencies - golang.org/x/crypto v0.27.0 ([#​5869](https://redirect.github.com/nats-io/nats-server/issues/5869)) - golang.org/x/sys v0.25.0 ([#​5869](https://redirect.github.com/nats-io/nats-server/issues/5869)) ##### Added Config - New TLS `min_version` option for configuring the minimum supported TLS version ([#​5904](https://redirect.github.com/nats-io/nats-server/issues/5904)) ##### Improved JetStream - Global JetStream API queue hard limit for protecting the system ([#​5900](https://redirect.github.com/nats-io/nats-server/issues/5900), [#​5923](https://redirect.github.com/nats-io/nats-server/issues/5923)) - Orphaned ephemeral consumer clean-up is now logged at debug level only ([#​5917](https://redirect.github.com/nats-io/nats-server/issues/5917)) Monitoring - `statsz` messages are now sent every 10 seconds instead of every 30 seconds ([#​5925](https://redirect.github.com/nats-io/nats-server/issues/5925)) - Include JetStream pending API request count in `statsz` messages and `jsz` responses for monitoring ([#​5923](https://redirect.github.com/nats-io/nats-server/issues/5923), [#​5926](https://redirect.github.com/nats-io/nats-server/issues/5926)) ##### Fixed JetStream - Fix an issue comparing the stream configuration with the updated stream assignment on stream create ([#​5854](https://redirect.github.com/nats-io/nats-server/issues/5854)) - Improvements to recovering from old or corrupted `index.db` ([#​5893](https://redirect.github.com/nats-io/nats-server/issues/5893), [#​5901](https://redirect.github.com/nats-io/nats-server/issues/5901), [#​5907](https://redirect.github.com/nats-io/nats-server/issues/5907)) - Ensure that consumer replicas and placement are adjusted properly when scaling down a replicated stream ([#​5927](https://redirect.github.com/nats-io/nats-server/issues/5927)) - Fix a panic that could occur when trying to shut down while the JetStream meta group was in the process of being set up ([#​5934](https://redirect.github.com/nats-io/nats-server/issues/5934)) Monitoring - Always update account issuer in `accountsz` ([#​5886](https://redirect.github.com/nats-io/nats-server/issues/5886)) OCSP - Fix peer validation on the HTTPS monitoring port when OCSP is enabled ([#​5906](https://redirect.github.com/nats-io/nats-server/issues/5906)) Config - Support multiple trusted operators using a config file ([#​5896](https://redirect.github.com/nats-io/nats-server/issues/5896)) ##### Complete Changes ### [`v2.10.20`](https://redirect.github.com/nats-io/nats-server/releases/tag/v2.10.20) [Compare Source](https://redirect.github.com/nats-io/nats-server/compare/v2.10.19...v2.10.20) #### Changelog Refer to the [2.10 Upgrade Guide](https://docs.nats.io/release-notes/whats_new/whats_new\_210) for backwards compatibility notes with 2.9.x. ##### Go Version - 1.22.6 ##### Fixed JetStream - Fix regression in KV CAS operations on R=1 replicas introduced in v2.10.19 ([#​5841](https://redirect.github.com/nats-io/nats-server/issues/5841)) Thanks to [@​cbrewster](https://redirect.github.com/cbrewster) for the report! ##### Complete Changes ### [`v2.10.19`](https://redirect.github.com/nats-io/nats-server/releases/tag/v2.10.19) [Compare Source](https://redirect.github.com/nats-io/nats-server/compare/v2.10.18...v2.10.19) #### Changelog Refer to the [2.10 Upgrade Guide](https://docs.nats.io/release-notes/whats_new/whats_new\_210) for backwards compatibility notes with 2.9.x. ##### Go Version - 1.22.6 ##### Dependencies - golang.org/x/crypto v0.26.0 ([#​5782](https://redirect.github.com/nats-io/nats-server/issues/5782)) - golang.org/x/sys v0.24.0 ([#​5782](https://redirect.github.com/nats-io/nats-server/issues/5782)) - golang.org/x/time v0.6.0 ([#​5751](https://redirect.github.com/nats-io/nats-server/issues/5751)) ##### Improved General - Reduced allocations in various code paths that check for subscription interest ([#​5736](https://redirect.github.com/nats-io/nats-server/issues/5736), [#​5744](https://redirect.github.com/nats-io/nats-server/issues/5744)) - Subscription matching for gateways and reply tracking has been optimized ([#​5735](https://redirect.github.com/nats-io/nats-server/issues/5735)) - Client outbound queues now limit the number of flushed vectors to ensure that very large outbound buffers don’t unfairly compete with write deadlines ([#​5750](https://redirect.github.com/nats-io/nats-server/issues/5750)) - In client and leafnode results cache, populate new entry after pruning ([#​5760](https://redirect.github.com/nats-io/nats-server/issues/5760)) - Use newly-available generic sorting functions ([#​5757](https://redirect.github.com/nats-io/nats-server/issues/5757)) - Set a HTTP read timeout on profiling, monitoring and OCSP HTTP servers ([#​5790](https://redirect.github.com/nats-io/nats-server/issues/5790)) - Improve behavior of rate-limited warning logs ([#​5793](https://redirect.github.com/nats-io/nats-server/issues/5793)) - Use dedicated queues for the handling of `statsz` and `profilez` system events ([#​5816](https://redirect.github.com/nats-io/nats-server/issues/5816)) Clustering - Reduce the chances of implicit routes being duplicated ([#​5602](https://redirect.github.com/nats-io/nats-server/issues/5602)) JetStream - Optimize LoadNextMsg for wildcard consumers that are consuming over a large subject space ([#​5710](https://redirect.github.com/nats-io/nats-server/issues/5710)) - When `sync`/`sync_interval` is set to `always`, metadata files for streams and consumers are now written using `O_SYNC` to guarantee flushes to disk ([#​5729](https://redirect.github.com/nats-io/nats-server/issues/5729)) - Walking an entire subject tree is now faster and allocates less ([#​5734](https://redirect.github.com/nats-io/nats-server/issues/5734)) - Try to snapshot stream state when a change in the clustered last failed sequence is detected ([#​5812](https://redirect.github.com/nats-io/nats-server/issues/5812)) - Message blocks are no longer loaded into memory unnecessarily when checking if we can skip ahead when loading the next message ([#​5819](https://redirect.github.com/nats-io/nats-server/issues/5819)) - Don’t attempt to re-compact blocks that cannot be compacted, reducing unnecessary CPU usage and disk I/Os ([#​5831](https://redirect.github.com/nats-io/nats-server/issues/5831)) Monitoring - Add StreamLeaderOnly filter option to return replica results only for groups for which that node is the leader ([#​5704](https://redirect.github.com/nats-io/nats-server/issues/5704)) - The `profilez` API endpoint in the system account can now acquire and return CPU profiles ([#​5743](https://redirect.github.com/nats-io/nats-server/issues/5743)) Miscellaneous - Various improvements to unit tests ([#​5668](https://redirect.github.com/nats-io/nats-server/issues/5668), [#​5607](https://redirect.github.com/nats-io/nats-server/issues/5607), [#​5695](https://redirect.github.com/nats-io/nats-server/issues/5695), [#​5706](https://redirect.github.com/nats-io/nats-server/issues/5706), [#​5825](https://redirect.github.com/nats-io/nats-server/issues/5825), [#​5834](https://redirect.github.com/nats-io/nats-server/issues/5834)) ##### Fixed General - Fixed a panic when looking up the account for a client ([#​5713](https://redirect.github.com/nats-io/nats-server/issues/5713)) - The `ClientURL()` function now returns correctly formatted IPv6 host literals ([#​5725](https://redirect.github.com/nats-io/nats-server/issues/5725)) - Fixed incorrect import cycle warnings when subject mapping is in use ([#​5755](https://redirect.github.com/nats-io/nats-server/issues/5755)) - A race condition that could cause slow consumers to leave behind subscription interest after the connection has been closed has been fixed ([#​5754](https://redirect.github.com/nats-io/nats-server/issues/5754)) - Corrected an off-by-one condition when growing to or shrinking from node48 in the subject tree ([#​5826](https://redirect.github.com/nats-io/nats-server/issues/5826)) JetStream - Retention issue that could cause messages to be incorrectly removed on a WorkQueuePolicy stream when consumers did not cover the entire subject space ([#​5697](https://redirect.github.com/nats-io/nats-server/issues/5697)) - Fixed a panic when calling the `raftz` endpoint during shutdown ([#​5672](https://redirect.github.com/nats-io/nats-server/issues/5672)) - Don’t delete NRG group persistent state on disk when failing to create subscriptions ([#​5687](https://redirect.github.com/nats-io/nats-server/issues/5687)) - Fixed behavior when checking for the first block that matches a consumer subject filter ([#​5709](https://redirect.github.com/nats-io/nats-server/issues/5709)) - Reduce the number of compactions made on filestore blocks due to deleted message tombstones ([#​5719](https://redirect.github.com/nats-io/nats-server/issues/5719)) - Fixed `maximum messages per subject exceeded` unexpected error on streams using a max messages per subject limit of 1 and discard new retention policy ([#​5761](https://redirect.github.com/nats-io/nats-server/issues/5761)) - Fixed bad meta state on restart that could cause deletion of assets ([#​5767](https://redirect.github.com/nats-io/nats-server/issues/5767)) - Fixed R1 streams exceeding quota limits ([#​5771](https://redirect.github.com/nats-io/nats-server/issues/5771)) - Return the correct sequence for a duplicated message on an interest policy stream when there is no interest ([#​5818](https://redirect.github.com/nats-io/nats-server/issues/5818)) - Fixed setting the consumer start sequence when that sequence does not yet appear in the stream ([#​5785](https://redirect.github.com/nats-io/nats-server/issues/5785)) - Connection type in scoped signing keys are now honored correctly ([#​5789](https://redirect.github.com/nats-io/nats-server/issues/5789)) - Expected last sequence per subject logic has now been harmonized across clustered stream leaders and followers, fixing a potential drift ([#​5794](https://redirect.github.com/nats-io/nats-server/issues/5794)) - Stream snapshots are now always installed correctly on graceful shutdown ([#​5809](https://redirect.github.com/nats-io/nats-server/issues/5809)) - A data race between consumer and stream updates has been resolved ([#​5820](https://redirect.github.com/nats-io/nats-server/issues/5820)) - Avoid increasing the cluster last failed sequence when the message was likely deleted ([#​5821](https://redirect.github.com/nats-io/nats-server/issues/5821)) Leafnodes - Leafnode connections will now be rejected when the cluster name contains spaces ([#​5732](https://redirect.github.com/nats-io/nats-server/issues/5732)) ##### Complete Changes ### [`v2.10.18`](https://redirect.github.com/nats-io/nats-server/releases/tag/v2.10.18) [Compare Source](https://redirect.github.com/nats-io/nats-server/compare/v2.10.17...v2.10.18) #### Changelog Refer to the [2.10 Upgrade Guide](https://docs.nats.io/release-notes/whats_new/whats_new\_210) for backwards compatibility notes with 2.9.x. ##### Go Version - 1.22.5 ##### Dependencies - github.com/nats-io/jwt v2.5.8 ([#​5618](https://redirect.github.com/nats-io/nats-server/issues/5618)) - github.com/minio/highwayhash v1.0.3 ([#​5627](https://redirect.github.com/nats-io/nats-server/issues/5627)) - golang.org/x/crypto v0.25.0 ([#​5627](https://redirect.github.com/nats-io/nats-server/issues/5627)) - golang.org/x/sys v0.22.0 ([#​5627](https://redirect.github.com/nats-io/nats-server/issues/5627)) ##### Improved Embedded - Export server function to initiate “lame duck mode” when embedding NATS ([#​5660](https://redirect.github.com/nats-io/nats-server/issues/5660)) JetStream - CPU spike during recalculation of first message in the memory store ([#​5629](https://redirect.github.com/nats-io/nats-server/issues/5629)) ##### Fixed JetStream - Fix duplicate callbacks on full wildcard match ([#​5610](https://redirect.github.com/nats-io/nats-server/issues/5610)) - Multiple fixes for the filestore per-subject state ([#​5616](https://redirect.github.com/nats-io/nats-server/issues/5616)) - Fix checkSkipFirstBlock which could return a negative index if the first block in the per-subject index is outdated ([#​5630](https://redirect.github.com/nats-io/nats-server/issues/5630)) - Don't ack messages if consumer is filtered and they were not applicable ([#​5639](https://redirect.github.com/nats-io/nats-server/issues/5639), [#​5612](https://redirect.github.com/nats-io/nats-server/issues/5612), [#​5638](https://redirect.github.com/nats-io/nats-server/issues/5638)) - Protect against possible panic in the filestore where the stree index is nil ([#​5662](https://redirect.github.com/nats-io/nats-server/issues/5662)) - Prevent panic when shutting down a server immediately after starting it ([#​5663](https://redirect.github.com/nats-io/nats-server/issues/5663)) ##### Complete Changes ### [`v2.10.17`](https://redirect.github.com/nats-io/nats-server/releases/tag/v2.10.17) [Compare Source](https://redirect.github.com/nats-io/nats-server/compare/v2.10.16...v2.10.17) #### Changelog Refer to the [2.10 Upgrade Guide](https://docs.nats.io/release-notes/whats_new/whats_new\_210) for backwards compatibility notes with 2.9.x. ##### Go Version - 1.22.4 ([#​5487](https://redirect.github.com/nats-io/nats-server/issues/5487)) ##### Dependencies - golang.org/x/sys v0.21.0 ([#​5508](https://redirect.github.com/nats-io/nats-server/issues/5508)) - golang.org/x/crypto v0.24.0 ([#​5509](https://redirect.github.com/nats-io/nats-server/issues/5509)) - github.com/klauspost/compress v1.17.9 ([#​5538](https://redirect.github.com/nats-io/nats-server/issues/5538)) - github.com/nats-io/nats.go v1.36.0 ([#​5538](https://redirect.github.com/nats-io/nats-server/issues/5538)) ##### Added Monitoring - Experimental `/raftz` monitoring endpoint for retrieving internal Raft group state for diagnostic purposes ([#​5530](https://redirect.github.com/nats-io/nats-server/issues/5530)) ##### Improved Core - Reorder struct fields in stree for improved memory alignment ([#​5517](https://redirect.github.com/nats-io/nats-server/issues/5517)) JetStream - Improve performance of calculating num-pending and interest state of a stream ([#​5476](https://redirect.github.com/nats-io/nats-server/issues/5476)) - Improve leadership change signaling ([#​5504](https://redirect.github.com/nats-io/nats-server/issues/5504), [#​5505](https://redirect.github.com/nats-io/nats-server/issues/5505)) - Improved memory-based stream behavior during server restarts ([#​5506](https://redirect.github.com/nats-io/nats-server/issues/5506)) - Reset election timer when leaving observer mode enabling quicker leadership hand-off ([#​5516](https://redirect.github.com/nats-io/nats-server/issues/5516)) - Ensure ack processing is consistent and correct between leader and followers for replicated consumers ([#​5524](https://redirect.github.com/nats-io/nats-server/issues/5524)) - Use per-subject info to speed up load-last filestore operations with wildcard filters ([#​5546](https://redirect.github.com/nats-io/nats-server/issues/5546)) - Populate missing per-subject info after skipping blocks when calculating filtered pending ([#​5545](https://redirect.github.com/nats-io/nats-server/issues/5545)) - Reduced time taken to process consumer deletes when there is a large gap between the consumer ack floor and the stream last sequence ([#​5547](https://redirect.github.com/nats-io/nats-server/issues/5547)) - No longer retrieve the WAL state unnecessarily when installing Raft snapshots ([#​5552](https://redirect.github.com/nats-io/nats-server/issues/5552)) - Increased filestore block and per-subject info cache expiry times to help improve performance on sparse streams ([#​5568](https://redirect.github.com/nats-io/nats-server/issues/5568)) - Reduce allocations in isMatch in filestore/memstore ([#​5573](https://redirect.github.com/nats-io/nats-server/issues/5573)) - Improved handling of out-of-date first blocks in per-subject info entries ([#​5577](https://redirect.github.com/nats-io/nats-server/issues/5577)) - Use stree for message block subject indexing instead of hashmaps ([#​5559](https://redirect.github.com/nats-io/nats-server/issues/5559)) - Avoid loading last message blocks on LoadNextMsg miss ([#​5584](https://redirect.github.com/nats-io/nats-server/issues/5584)) - Add node48 node size to stree, providing better memory utilisation for some subject spaces ([#​5585](https://redirect.github.com/nats-io/nats-server/issues/5585)) - Logging message when exceeding JetStream account limits now prints the account ([#​5597](https://redirect.github.com/nats-io/nats-server/issues/5597)) Monitoring - Rate-limit statsz updates which reduces load for very large clusters ([#​5470](https://redirect.github.com/nats-io/nats-server/issues/5470), [#​5485](https://redirect.github.com/nats-io/nats-server/issues/5485)) Thanks to [@​wjordan](https://redirect.github.com/wjordan) for the report and contribution! ##### Changed MQTT - Do not wait for JS responses when disconnecting the session ([#​5575](https://redirect.github.com/nats-io/nats-server/issues/5575)) ##### Fixed Accounts - Import/export cycle detection ([#​5494](https://redirect.github.com/nats-io/nats-server/issues/5494)) Thanks to [@​semakasyrok](https://redirect.github.com/semakasyrok) for the contribution! - Allow callout users to be revoked ([#​5555](https://redirect.github.com/nats-io/nats-server/issues/5555), [#​5561](https://redirect.github.com/nats-io/nats-server/issues/5561)) - Fixed a data race when updating payload limits from JWT claims ([#​5593](https://redirect.github.com/nats-io/nats-server/issues/5593)) Core - Allow client kick to also kick leafnode connections ([#​5587](https://redirect.github.com/nats-io/nats-server/issues/5587)) - Fix imports sometimes not being available for a client after server restarts ([#​5588](https://redirect.github.com/nats-io/nats-server/issues/5588), [#​5589](https://redirect.github.com/nats-io/nats-server/issues/5589)) JetStream - Avoid panic on corrupted TAV file ([#​5464](https://redirect.github.com/nats-io/nats-server/issues/5464)) - Performance regression in `LoadNextMsg` with very sparse or no messages ([#​5475](https://redirect.github.com/nats-io/nats-server/issues/5475)) - Stepdown candidate when append-entry is ahead of last log term ([#​5481](https://redirect.github.com/nats-io/nats-server/issues/5481)) - Fix possible redelivery after successful ack during rollout restarts ([#​5482](https://redirect.github.com/nats-io/nats-server/issues/5482)) - Fix returning maximum consumers limit reached on some consumer updates ([#​5489](https://redirect.github.com/nats-io/nats-server/issues/5489)) - Fix last sequence stream reset on server restart ([#​5497](https://redirect.github.com/nats-io/nats-server/issues/5497)) - Fix data between creating a consumer and determining cluster state ([#​5501](https://redirect.github.com/nats-io/nats-server/issues/5501)) - Prevent interleaving of setting/unsetting observer states ([#​5503](https://redirect.github.com/nats-io/nats-server/issues/5503)) - Fix accounting for consumers with a different replication factor than the parent stream ([#​5521](https://redirect.github.com/nats-io/nats-server/issues/5521)) - Fix potential segfault if `mset.mirror` was nil when calculating the last loaded message ([#​5522](https://redirect.github.com/nats-io/nats-server/issues/5522)) - Follower stores no longer inherit the redelivered consumer delivered sequence which could break ack gap fill ([#​5533](https://redirect.github.com/nats-io/nats-server/issues/5533)) - Direct Raft proposals will no longer bypass the internal proposal queue which could cause incorrect interleaving of state ([#​5543](https://redirect.github.com/nats-io/nats-server/issues/5543)) - Audit streams that capture `$JS.>`, `$JS.API.>`, `$JSC.>` and `$SYS.>` subjects are now only allowed if `NoAck` is set, avoiding potential misconfiguration that could affect the JetStream API, with the exception of the more specific `$JS.EVENT.>` and `$SYS.ACCOUNT.>` as these were allowed before ([#​5548](https://redirect.github.com/nats-io/nats-server/issues/5548), [#​5556](https://redirect.github.com/nats-io/nats-server/issues/5556)) - Streams from failed snapshot restores are now cleaned up correctly, fixing potential false positive warnings on `/healthz` after a failed restore ([#​5549](https://redirect.github.com/nats-io/nats-server/issues/5549)) - Ensure that internal system clients used by Raft groups are always cleaned up correctly, fixing a potential memory leak ([#​5566](https://redirect.github.com/nats-io/nats-server/issues/5566)) Thanks to [@​slice-srinidhis](https://redirect.github.com/slice-srinidhis) for the report! - Fixed a potential panic when updating stream sources on an existing stream ([#​5571](https://redirect.github.com/nats-io/nats-server/issues/5571)) - Fixed panic when creating a stream with an incorrect mapping destination ([#​5570](https://redirect.github.com/nats-io/nats-server/issues/5570), [#​5571](https://redirect.github.com/nats-io/nats-server/issues/5571)) - Fixed returning error when trying to update a stream that has sources with bad subject transforms ([#​5574](https://redirect.github.com/nats-io/nats-server/issues/5574)) - Fixed a bug that would return “no message found” for last_per_subject ([#​5578](https://redirect.github.com/nats-io/nats-server/issues/5578)) - Correctly leave Raft observer state after applies were paused, i.e. due to a catch-up in progress ([#​5586](https://redirect.github.com/nats-io/nats-server/issues/5586)) - JetStream no longer leaks memory when creating and deleting Raft groups ([#​5600](https://redirect.github.com/nats-io/nats-server/issues/5600)) - Fixed a potential panic in consumer ack queue handling ([#​5601](https://redirect.github.com/nats-io/nats-server/issues/5601)) - Fixed data race in runAsLeader ([#​5604](https://redirect.github.com/nats-io/nats-server/issues/5604)) Leafnodes - Prevent potential message duplication for queue-group subscriptions ([#​5519](https://redirect.github.com/nats-io/nats-server/issues/5519)) Thanks to [@​pcsegal](https://redirect.github.com/pcsegal) for the report! Monitoring - Ensure consistency of the delivered stream sequence in `/jsz` filtered consumer reporting ([#​5528](https://redirect.github.com/nats-io/nats-server/issues/5528)) ##### Chores Config - Clarify comment on re-use of config `Options` type for embedded mode ([#​5472](https://redirect.github.com/nats-io/nats-server/issues/5472)) Thanks to [@​robinkb](https://redirect.github.com/robinkb) for the report and contribution! JetStream - Added additional memory-based Raft tests ([#​5515](https://redirect.github.com/nats-io/nats-server/issues/5515)) ##### Complete Changes ### [`v2.10.16`](https://redirect.github.com/nats-io/nats-server/releases/tag/v2.10.16) #### Changelog Refer to the [2.10 Upgrade Guide](https://docs.nats.io/release-notes/whats_new/whats_new\_210) for backwards compatibility notes with 2.9.x. > \[!WARNING] > A possible regression may result in a server panic at startup when `tav.idx` files were incorrectly truncated down to zero bytes. You can work around this problem by deleting `tav.idx` files that are zero bytes in length before starting the server. Zero-byte files could exist as a result of a previous server crash before a successful file sync to disk occurred. ##### Go Version - 1.22.3 ([#​5438](https://redirect.github.com/nats-io/nats-server/issues/5438)) ##### Dependencies - github.com/nats-io/jwt/v2 v2.5.6 ([#​5328](https://redirect.github.com/nats-io/nats-server/issues/5328)) - golang.org/x/sys v0.20.0 ([#​5388](https://redirect.github.com/nats-io/nats-server/issues/5388)) - golang.org/x/crypto v0.23.0 ([#​5413](https://redirect.github.com/nats-io/nats-server/issues/5413)) ##### Added - Added Left and Right subject mapping operations ([#​5337](https://redirect.github.com/nats-io/nats-server/issues/5337)) Thanks to [@​sspates](https://redirect.github.com/sspates) for the contribution! - Add a `/expvarz` monitoring endpoint ([#​5374](https://redirect.github.com/nats-io/nats-server/issues/5374)) ##### Improved Accounts - Change `AccountResolver()` to use read lock to prevent contention ([#​5351](https://redirect.github.com/nats-io/nats-server/issues/5351)) - Improve muxed routes with large subject space ([#​5399](https://redirect.github.com/nats-io/nats-server/issues/5399)) Gateway - Outbound may fail to detect stale connection ([#​5356](https://redirect.github.com/nats-io/nats-server/issues/5356)) Thanks to [@​wjordan](https://redirect.github.com/wjordan) for the report! JetStream - Optimize stream subject matching implementation ([#​5316](https://redirect.github.com/nats-io/nats-server/issues/5316), [#​5324](https://redirect.github.com/nats-io/nats-server/issues/5324), [#​5329](https://redirect.github.com/nats-io/nats-server/issues/5329), [#​5342](https://redirect.github.com/nats-io/nats-server/issues/5342), [#​5353](https://redirect.github.com/nats-io/nats-server/issues/5353)) - Improve filestore LoadNextMsg performance ([#​5401](https://redirect.github.com/nats-io/nats-server/issues/5401)) - Prevent blocking writes on meta state filestore flush ([#​5333](https://redirect.github.com/nats-io/nats-server/issues/5333)) - Add logging to measure `writeFullState` and `enforceMsgPerSubjectLimit` ([#​5340](https://redirect.github.com/nats-io/nats-server/issues/5340)) - Do not hold filestore lock on msg block loads when looking up the first sequence for subject ([#​5363](https://redirect.github.com/nats-io/nats-server/issues/5363)) - Improve various stream sourcing and mirror behaviors and performance ([#​5366](https://redirect.github.com/nats-io/nats-server/issues/5366), [#​5372](https://redirect.github.com/nats-io/nats-server/issues/5372), [#​5379](https://redirect.github.com/nats-io/nats-server/issues/5379), [#​5389](https://redirect.github.com/nats-io/nats-server/issues/5389)) - Increase the compression threshold for Raft traffic ([#​5371](https://redirect.github.com/nats-io/nats-server/issues/5371)) - Put a maximum idle flush time for the filestore ([#​5370](https://redirect.github.com/nats-io/nats-server/issues/5370)) - Updated subject state expiration ([#​5377](https://redirect.github.com/nats-io/nats-server/issues/5377)) - Simplify writing the full state to index.db ([#​5378](https://redirect.github.com/nats-io/nats-server/issues/5378)) - Added in separate last subject timestamp to track access ([#​5380](https://redirect.github.com/nats-io/nats-server/issues/5380)) - Check consumer leader status without locks ([#​5386](https://redirect.github.com/nats-io/nats-server/issues/5386)) - Various Raft improvements with limited to no state ([#​5427](https://redirect.github.com/nats-io/nats-server/issues/5427)) - Improved consumer with AckAll performance of first ack with large first stream sequence ([#​5446](https://redirect.github.com/nats-io/nats-server/issues/5446)) - Various stream catchup improvements ([#​5454](https://redirect.github.com/nats-io/nats-server/issues/5454)) WebSocket - Improve generating INFO data to send to clients ([#​5405](https://redirect.github.com/nats-io/nats-server/issues/5405)) ##### Fixed Config - Fix to properly deal with block scopes in lexer ([#​5406](https://redirect.github.com/nats-io/nats-server/issues/5406), [#​5431](https://redirect.github.com/nats-io/nats-server/issues/5431), [#​5436](https://redirect.github.com/nats-io/nats-server/issues/5436)) JetStream - Fix potential deadlock if a panic occurs during `calculateSyncRequest` ([#​5321](https://redirect.github.com/nats-io/nats-server/issues/5321)) - Fix corner cases of subject matching ([#​5318](https://redirect.github.com/nats-io/nats-server/issues/5318), [#​5339](https://redirect.github.com/nats-io/nats-server/issues/5339)) Thanks to [@​mihaitodor](https://redirect.github.com/mihaitodor) for the report! - Prevent stepping down for old election terms ([#​5314](https://redirect.github.com/nats-io/nats-server/issues/5314)) - Prevent WAL truncation during catch-up until after peerstate/snapshot check ([#​5330](https://redirect.github.com/nats-io/nats-server/issues/5330)) - Fix various delivery counter logic ([#​5338](https://redirect.github.com/nats-io/nats-server/issues/5338), [#​5361](https://redirect.github.com/nats-io/nats-server/issues/5361)) - Reset election timeout only on granted vote request ([#​5315](https://redirect.github.com/nats-io/nats-server/issues/5315)) - Ensure stream catchup syncs after server crash and restart ([#​5362](https://redirect.github.com/nats-io/nats-server/issues/5362)) - Prevent race condition for mirroring a consumer ([#​5369](https://redirect.github.com/nats-io/nats-server/issues/5369)) - Ensure messages are removed after consumer updates occur on interest-based streams ([#​5384](https://redirect.github.com/nats-io/nats-server/issues/5384)) Thanks to [@​MauriceVanVeen](https://redirect.github.com/MauriceVanVeen) for the report and contribution! - Cleanup messages on interest stream after consumer interest changes ([#​5385](https://redirect.github.com/nats-io/nats-server/issues/5385)) Thanks to [@​tyler-eon](https://redirect.github.com/tyler-eon) for the report and [@​MauriceVanVeen](https://redirect.github.com/MauriceVanVeen) for the contribution! - Fix potential redelivery of acked messages during server restarts ([#​5419](https://redirect.github.com/nats-io/nats-server/issues/5419)) - Hold onto tombstones for previous blocks on compact ([#​5426](https://redirect.github.com/nats-io/nats-server/issues/5426)) - Fixes for rescaling streams with sources ([#​5428](https://redirect.github.com/nats-io/nats-server/issues/5428)) WebSocket - Fix data races during shutdown ([#​5398](https://redirect.github.com/nats-io/nats-server/issues/5398)) ##### Chores - Various test improvements ([#​5319](https://redirect.github.com/nats-io/nats-server/issues/5319), [#​5332](https://redirect.github.com/nats-io/nats-server/issues/5332), [#​5341](https://redirect.github.com/nats-io/nats-server/issues/5341)) - Document field names ([#​5359](https://redirect.github.com/nats-io/nats-server/issues/5359)) ##### Complete Changes ### [`v2.10.14`](https://redirect.github.com/nats-io/nats-server/releases/tag/v2.10.14) [Compare Source](https://redirect.github.com/nats-io/nats-server/compare/v2.10.12...v2.10.14) #### Changelog (Note there was no 2.10.13 version 🙂) Refer to the [2.10 Upgrade Guide](https://docs.nats.io/release-notes/whats_new/whats_new\_210) for backwards compatibility notes with 2.9.x. ##### Go Version - 1.21.9 ([#​5300](https://redirect.github.com/nats-io/nats-server/issues/5300)) ##### Dependencies - github.com/nats-io/nats.go v1.34.1 ([#​5271](https://redirect.github.com/nats-io/nats-server/issues/5271)) - golang.org/x/crypto v0.22.0 ([#​5283](https://redirect.github.com/nats-io/nats-server/issues/5283)) ##### Improved Auth - Improve clone behavior to prevent unintended references ([#​5246](https://redirect.github.com/nats-io/nats-server/issues/5246)) Thanks to [Trail Of Bits](https://trailofbits.com/) for the report! - Apply constant-time evaluation of non-bcrypt passwords ([#​5247](https://redirect.github.com/nats-io/nats-server/issues/5247)) Thanks to [Trail Of Bits](https://trailofbits.com/) for the report! JetStream - Reduce lock contention when looking up stream metadata ([#​5223](https://redirect.github.com/nats-io/nats-server/issues/5223)) - Optimize matching a subject when applying per subject message limits ([#​5228](https://redirect.github.com/nats-io/nats-server/issues/5228)) - Optimize waiting queue for pull consumers to reduce excessive memory and GC pressure ([#​5233](https://redirect.github.com/nats-io/nats-server/issues/5233)) - Improve error handling in filestore to prevent duplicate nonces being used and ignored errors ([#​5248](https://redirect.github.com/nats-io/nats-server/issues/5248)) Thanks to [Trail Of Bits](https://trailofbits.com/) for the report! - Improve interest and workqueue state tracking to prevent stranded messages during concurrent consumer acks and stream deletes ([#​5270](https://redirect.github.com/nats-io/nats-server/issues/5270)) - Introduce store method to push down and optimize multi-filter subject matching used by consumers ([#​5274](https://redirect.github.com/nats-io/nats-server/issues/5274)) Thanks to [@​svenfoo](https://redirect.github.com/svenfoo) for the report! - Various improvements and fixes for clustered interest-based streams and associated consumers ([#​5287](https://redirect.github.com/nats-io/nats-server/issues/5287)) - Return errors and/or adding logging for rare filestore conditions ([#​5298](https://redirect.github.com/nats-io/nats-server/issues/5298)) - When explicitly syncing to the filesystem, hold the message block lock to prevent possible downstream corruption ([#​5301](https://redirect.github.com/nats-io/nats-server/issues/5301), [#​5303](https://redirect.github.com/nats-io/nats-server/issues/5303)) ##### Fixed OS - Fix for race checkptr panic on macOS/Darwin on Go 1.22 ([#​5265](https://redirect.github.com/nats-io/nats-server/issues/5265)) Connections - Address possible memory leak due to connections not be released ([#​5244](https://redirect.github.com/nats-io/nats-server/issues/5244)) Thanks to [@​davidzhao](https://redirect.github.com/davidzhao) for the report! JetStream - Fix incorrect subject overlapping checks that could lead to multiple consumers or streams bound to the same subjects ([#​5224](https://redirect.github.com/nats-io/nats-server/issues/5224)) - Improve situations that could result in orphan messages in streams ([#​5227](https://redirect.github.com/nats-io/nats-server/issues/5227)) - Protect against corrupt message block when doing indexing ([#​5238](https://redirect.github.com/nats-io/nats-server/issues/5238)) Thanks to [@​kylemcc](https://redirect.github.com/kylemcc) for the report! - Fix consumer config check of max deliver when backoff is set ([#​5242](https://redirect.github.com/nats-io/nats-server/issues/5242)) - Ignore Nats-Expected-\* headers from source stream ([#​5256](https://redirect.github.com/nats-io/nats-server/issues/5256)) Thanks to [@​ramonberrutti](https://redirect.github.com/ramonberrutti) for the report and contribution! - Add missing check that could result an extended purge or compact to fail in memory-based streams ([#​5264](https://redirect.github.com/nats-io/nats-server/issues/5264)) - Fix issue that could result in skipping valid messages when loading them from the filestore ([#​5266](https://redirect.github.com/nats-io/nats-server/issues/5266)) - Use cluster-scoped lock when processing a leader change ([#​5267](https://redirect.github.com/nats-io/nats-server/issues/5267)) - Fix missing unlocks in filestore and streams in certain error conditions ([#​5276](https://redirect.github.com/nats-io/nats-server/issues/5276)) Thanks to [Trail Of Bits](https://trailofbits.com/) for the report! - Ensure lock is held for the duration of a filestore truncate ([#​5279](https://redirect.github.com/nats-io/nats-server/issues/5279)) - Fix race condition when checking for the stream interest state ([#​5290](https://redirect.github.com/nats-io/nats-server/issues/5290)) - Ensure dangling NRG directories are cleaned up when the in-memory stream/consumer are deleted ([#​5291](https://redirect.github.com/nats-io/nats-server/issues/5291)) - Perform a standard stream purge when ack floor is higher than the last known state ([#​5293](https://redirect.github.com/nats-io/nats-server/issues/5293)) - Handle concurrent creation of workqueue consumers that could result in overlapping interest ([#​5295](https://redirect.github.com/nats-io/nats-server/issues/5295)) Thanks to [@​LautaroJayat](https://redirect.github.com/LautaroJayat) for the report! - Fix possible case of multiple deliveries of the same message that cause the delivery count decreasing ([#​5305](https://redirect.github.com/nats-io/nats-server/issues/5305)) Monitoring - Fix JSZ account filtering behavior when requesting stream details ([#​5229](https://redirect.github.com/nats-io/nats-server/issues/5229)) OCSP - Fix stapling during gateway reconnect and configuration reload ([#​5208](https://redirect.github.com/nats-io/nats-server/issues/5208)) ##### Chores - Fix incorrect function names in comments ([#​5237](https://redirect.github.com/nats-io/nats-server/issues/5237), [#​5289](https://redirect.github.com/nats-io/nats-server/issues/5289)) Thanks to [@​depthlending](https://redirect.github.com/depthlending) and [@​needsure](https://redirect.github.com/needsure) for the contributions! - Improve workqueue stream sourcing tests ([#​5112](https://redirect.github.com/nats-io/nats-server/issues/5112)) - Speed-up tests and fixup lint reports ([#​5258](https://redirect.github.com/nats-io/nats-server/issues/5258)) - Improve hardened systemd configuration example ([#​5272](https://redirect.github.com/nats-io/nats-server/issues/5272)) - Refactor LoadNextMsgMulti store tests to guard against drift ([#​5275](https://redirect.github.com/nats-io/nats-server/issues/5275), [#​5277](https://redirect.github.com/nats-io/nats-server/issues/5277)) - Rename orphan messages and replicas test cases ([#​5292](https://redirect.github.com/nats-io/nats-server/issues/5292)) ##### Complete Changes

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR was generated by Mend Renovate. View the repository job log.

renovate[bot] commented 3 months ago

ℹ Artifact update notice

File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

Details:

Package Change
go 1.21 -> 1.23.2
golang.org/x/sync v0.7.0 -> v0.8.0
golang.org/x/net v0.21.0 -> v0.25.0
golang.org/x/sys v0.18.0 -> v0.25.0
golang.org/x/term v0.18.0 -> v0.24.0
golang.org/x/text v0.14.0 -> v0.18.0
golang.org/x/time v0.5.0 -> v0.6.0