Skip to content

Releases: nats-io/nats.java

2.15.0 Subscription must be made before consumer is created

04 May 20:47
ddad68d
Compare
Choose a tag to compare

The order of creating a subscription on the server and creating a consumer on the server matters. Once the consumer is created, there is interest and the server tries to deliver. But if the subscription is not created, the messages are delivered to...nowhere, but are considered delivered.

This was not strictly a problem but it was a race - if the subscription was ready before the consumer was sent messages, then things went fine. Unit test didn't fail. But when we were testing against NGS and in clusters with mixes of JetStream and non-Jetstream servers, the consumer was always ready because of simple latency.

So now the server subscription is always made first avoiding the problem altogether.

See PR #639

2.14.2 Consumer Configuration Change Validation

04 May 13:33
ba721c7
Compare
Choose a tag to compare

Improvements

PR #637

  • Added additional validation (unit testing) in relation to PR #635 Improve subscription creation with existing durable to be smarter when comparing provided configuration with server configuration.
  • Added more information to the exception message text by including a list of fields that caused the issue.

2.14.1 Improvements, client parity, docs, etc.

26 Apr 13:55
ce2c647
Compare
Choose a tag to compare

Client Parity

PR #630 Support for server Consumer feature Backoff Lists.

Improvements

Issue #616 / PR #617 Support for timeout propagation in async requests
PR #630 Surfaced delay for nak requests
PR #631 Tune kv subscribe supported functions keys / history / purge
PR #634 Added client side limit checks option to allow turning off client side checks which forces check to server. Default behavior is the same.
PR #635 Improve subscription creation with existing durable to be smarter when comparing provided configuration with server configuration.

Bug Fixes

Issue #621 / PR #622 Fixed kv key with dot as part of the key

Documentation etc.

PR #612 Version change and miscellaneous documentation.
PR #629 Rate Limit is bytes per second (bps) not messages per second.

2.14.0 KV Release

08 Mar 23:53
8a35b87
Compare
Choose a tag to compare

Key Value

  • KV API Release

JetStream

  • Allow null or empty subject when appropriate while subscribing / binding
  • new JetStreamManagement api StreamInfo getStreamInfo(String streamName, StreamInfoOptions options)
  • support Stream Configuration and Stream State to reflect server changes up to server V2.7.3
  • support Consumer Configuration reflect server changes up to server V2.7.3
  • Fixed bug with pull subscribe fetch and iterate where it could wait twice the expiration time and improved implementation to reflect server changes in pull behavior.
  • Added combo pull nowait + expires primitive api to match server pull changes.

Miscellaneous

  • Addressed Info level Cure53 audit item regarding version string.
  • Moved JsMultiTool out of example to the example repo.
  • Added NatsJsPushSubAsyncQueueDurable example program.
  • Unit test improvements to prevent flappers

2.13.2 KV Experimental

06 Jan 01:58
55b5e0b
Compare
Choose a tag to compare

JetStream

2.13.2 KV Experimental

2.13.1 Subscription Consumer Configuration Fix

02 Nov 21:17
04eab7f
Compare
Choose a tag to compare

JetStream

  • This release fixes a bug found in the new subscription enhancements where the comparison of default configuration failed to validate properly against an existing (durable) consumer configuration.

  • There are also minor enhancements to the JsMulti tool

2.13.0 Subscription Enhancements

27 Oct 17:12
7525652
Compare
Choose a tag to compare

JetStream

  • Subscription validation. See Subscription Creation
  • Flow Control and Heartbeat handling
  • Domain Support
  • Stream/Subject Binding

2.12.0 Server Queue Improvements

08 Sep 17:08
fd54e70
Compare
Choose a tag to compare

This release is the first release to support v2.4.0 of the NATS server. The change covers how queueing is supported in JetStream using the Deliver Group subscribe option.

2.11.6 KV beta last release compatible with Server v2.3.4 and older

25 Aug 12:23
f5963c6
Compare
Choose a tag to compare

Overview

  1. Key Value (KV) Beta: This release includes a beta version of the Key Value functionality. There were multiple PR's involved in KV including new interfaces and new api / protocol enhancements designed to support KV
  2. Support for API error code allowing server generated errors to be identified by number instead of text.
  3. Stream and Consumer descriptions
  4. Publish expectation last subject sequence
  5. Advanced stream purge functionality
  6. Primitive pull functionality marked as "advanced"

2.11.5

06 Jul 11:18
c5490f8
Compare
Choose a tag to compare

Pull Requests

[ENHANCEMENT] PR #506 handle unsigned long values in JetStream api data.