Skip to content

Releases: nats-io/nats.java

2.11.5.beta3

22 Jun 15:41
a635591
Compare
Choose a tag to compare

This is purely a CI/CD release. There are no functional changes since 2.11.4

2.11.4

01 Jun 20:38
3d9ab56
Compare
Choose a tag to compare

Revert performance fix due to high cpu during idle.

2.11.3

24 May 17:53
40ba3a1
Compare
Choose a tag to compare

Pull Requests

[ENHANCEMENT] PR #472 / #477 benchmark improvements (@scottf)
[ENHANCEMENT] PR #473 performance improvements(@scottf)
[FIXED] PR #475 fixed filter subject (@scottf)
[EXAMPLES] PR #478 Clarify examples with deliver subjects (@scottf)

2.11.2

17 May 19:38
3f41101
Compare
Choose a tag to compare

Pull Requests

[ENHANCEMENT] PR #470 JsMultiTool and AutoBench Reporting Enhancements (@scottf)
[ENHANCEMENT] PR #468 duplicates and orphans (@scottf)
[FEATURE] PR #467 / #471 Heartbeat and Flow Control (@scottf)
[FIXED] PR #466 JsMultiTool Queue Fix (@scottf)

2.11.1 JetStream Multi Tool

06 May 21:01
721aa3f
Compare
Choose a tag to compare

JetStream Multi Tool enhancements and documentation

2.11.0

30 Apr 21:34
92771e6
Compare
Choose a tag to compare

Issue Bug Fixes

  • [FIXED] Issue #340 No connection possible when using multiple servers PR #455 (@scottf)

Pull Requests

  • [FIXED] PR #451 Header status improvements (@scottf)
  • [ENHANCEMENT] PR #452 handle no ack publishing (@scottf)
  • [ENHANCEMENT] PR #456 switched to jnats-server-runner library (@scottf)
  • [ENHANCEMENT] PR #446 improve cleanup of async responses (@scottf)

Issues General Closed

  • [NON ISSUE] Issue #298 NatsConnection does not report SSL error (@scottf)
  • [WILL NOT IMPLEMENT] Issue #272 Add ability to publish byte arrays with specified offset and length (@scottf)
  • [DOCUMENTED] Issue #316 Failure creating a subscription on a (fairly) new connection (@scottf)
  • [NON ISSUE] Issue #344 Performance issue when publishing to certain topics (@scottf)
  • [WILL NOT IMPLEMENT] Issue #373 Why not netty for networking? (@sasbury)
  • [PRE-RELEASE FEATURE REMOVED] Issue #388 In the jetstream subscriber examples... (@scottf)
  • [DOCUMENTED] Issue #402 Unable to connect to NATS server via Android Studio
  • [DOCUMENTED] Issue #445 NatsConnection.request(Message) does not use Message.replyTo (@scottf)
  • [DOCUMENTED] Issue #423 createContext() not documented (@scottf)

2.10.0 - JetStream features

01 Apr 19:46
831274f
Compare
Choose a tag to compare

Overview

  1. JetStream (message and management) support added.
  2. Miscellaneous bug fixes.
  3. Examples and benchmarks updated
  4. Improved unit tests with reusable scaffolding
  5. General Improvements
  6. Switched default branch from "master" to "main"

Non JetStream Pull Requests

  • [GENERAL] PR #358 Use OS Default SecureRandom (@scottf)
  • [BUILD] Issue #360 Automatic-Module-Name clause added to jar manifest. (@bjorndarri)
  • [BUILD] PR #365 gradle minor improvements, support windows (@scottf)
  • [TEST] PR #375 fix test failing because of timeout that aren't testing timing (@scottf)
  • [GENERAL] PR #380 Add a flushBuffer API (@ColinSullivan1)
  • [GENERAL] PR #383 nuid speed improvements (@scottf)
  • [GENERAL] PR #391 reconnect-jitter-handler-serverinfo-tests (@scottf)

Issue Features

Issue Bug Fixes

  • [FIXED] Issue #424 ERROR: Subject remapping requires Options.oldRequestStyle()... (@scottf)
  • [FIXED] Issue #345 "unable to stop reader thread" log message (@ColinSullivan1) Fixed in PR #427
  • [FIXED] Issue #310 NatsConnection.close unnecessarily sleeps for one second (@scottf)

Issues General

  • [COMMENTED] Issue #341 Why is a char[] more secure then a String for connection auth details? (@scottf)
  • [OTHER] Issue #384 Validations on expectedLastSeqence, expectedStream and expectedLastMsgId are not working for jetstream producer (fixed by nats-server PR #1787)

2.8.0 - Added support for lame duck mode notification

24 Aug 17:19
031b245
Compare
Choose a tag to compare
  • Added lame-duck mode support 334

When a server goes into lame-duck mode. The client will send out a connection event.

Example code registering for lame-duck mode.

            Options options = new Options.Builder().server(ts.getURI()).connectionListener(new ConnectionListener() {
                @Override
                public void connectionEvent(Connection conn, Events type) {
                    if (type.equals(Events.LAME_DUCK)) connectLDM.complete(type);
                }
            }).build();

            Connection nc = Nats.connect(options);

Lame-duck mode is for servers in a cluster to tell clients that they will no longer be serving requests.
Clients can get notified of this and gracefully perform some actions.

2.7.0

19 Aug 23:40
d859b6d
Compare
Choose a tag to compare

Miscellaneous Updates

Bug Fixes

2.6.8 - reconnect improvements

27 May 23:12
507490d
Compare
Choose a tag to compare

2.6.8 - reconnect improvements.

Changed the reconnect logic so it does not try to connect to a server that it just lost the connection to.

With the randomization algorithm, there's a chance the client will immediately try the server it just lost connection with. Move the last connected server to the end of the list when reconnecting.

  • [FIXED] - #309 - Removed some debug printf statements
  • [CHANGED] - Allow disable reconnect buffer by using size of zero
  • [CHANGED] - Added option to set the max unsent size at the writer and fail or discard messages
  • [CHANGED] - Updated build.gradle to not fail if TRAVIS_BRANCH isn't set