This topic describes the release notes for the TCP client SDK for Java. The release notes include the release date, download link, and feature updates for each release. You can choose a version of the SDK for Java that meets your business requirements to send and subscribe to messages based on the description of this topic.

Notice
  • Java Development Kit (JDK) 1.8 is applicable to all versions of the TCP client SDK for Java. JDK 1.6 is applicable only to ons-client V1.8.4.Final and earlier versions. To prevent JDK compatibility issues when you update the SDK version, we recommend that you use JDK 1.8.
  • You can upgrade your TCP client SDK for Java to V2.x.x.Final only in the China (Chengdu), China (Qingdao), and China (Shenzhen) regions. Do not upgrade your TCP client SDK for Java to V2.x.x.Final in other regions to ensure that you can use the SDK to connect to Message Queue for Apache RocketMQ. If you need to upgrade your TCP client SDK for Java to V2.x.x.Final in other regions, submit a ticket to contact Alibaba Cloud technical support.

  • For information about how to obtain Maven dependencies, see Prepare the environment.

2.0.1.Final

Release date Description Supported region Download link
2021-11-29

Optimized features

  • More data is returned in trace query results.
This version of SDK is available only in the following regions:
  • China (Chengdu)
  • China (Qingdao)
  • China (Shenzhen)
ons-client-2.0.1.Final

2.0.0.Final

Release date Description Supported region Download link
2021-10-18

Optimized features

  • Load balancing: Load balancing is performed based on messages. This makes the message loads more balanced.
  • Public endpoint: A Message Queue for Apache RocketMQ instance can be accessed by using a public TCP endpoint.
  • Dashboard: Various metrics are added. The added metrics include the number of accumulated messages and the duration and success rate of each step from message production to message consumption.
  • Message tracing: More parameters are included in trace query results. These parameters are related to scheduled messages, delayed messages, transactional messages, and message consumption.
  • Ordered messages: The maximum number of retries is changed to 16.
  • Transactional messages: The logic for processing exceptions that are related to transactional messages is optimized.
  • Broadcasting consumption: The consumer offset can be customized when you start a consumer.
  • Push mode: The consumption throttling feature is supported. The processing logic is optimized for scenarios in which the number of consumption threads is abnormal.
  • Logging configuration: The default log path is changed. Log levels are added. Environment variables are supported.
  • Client creation: The logic for handling errors is optimized.

Fixed issues

  • The following issue is fixed: When the updateCredential operation is called multiple times in a short period of time, cross-account authorization for Resource Access Management (RAM) roles by using Security Token Service (STS) fails because atomicity is not ensured when the AccessKey ID, AccessKey secret, and STS token are updated.
Note For more information, see Release notes for the SDK for Java.
This version of SDK is available only in the following regions:
  • China (Chengdu)
  • China (Qingdao)
  • China (Shenzhen)
ons-client-2.0.0.Final

1.8.8.5.Final

Release date Description Download link
2022-05-16

Fixed issues

  • The following issue is fixed: When the updateCredential operation is called multiple times in a short period of time, cross-account authorization for Resource Access Management (RAM) roles by using Security Token Service (STS) fails because atomicity is not ensured when the AccessKey ID, AccessKey secret, and STS token are updated.
Note This issue is fixed only in scenarios in which RAM roles are used for authorization. This issue still occurs if you manually update the AccessKey ID, AccessKey secret, and STS token during authorization.
ons-client-1.8.8.5.Final

1.8.8.3.Final

Release date Description Download link
2022-01-18

Optimized features

  • The following issue is fixed: The message that corresponds to a specific consumer offset is skipped due to broker errors.
  • The following issue is fixed: The unit of the timeout period for message consumption is incorrect.
ons-client-1.8.8.3.Final

1.8.8.1.Final

Release date Description Download link
2021-08-24

Optimized features

  • The following issue is fixed: An error occurs when the system retries to send an ordered message.
  • The following issue is fixed: Multiple duplicate messages are generated when the client retries to send a message that fails to be consumed in specific scenarios.
ons-client-1.8.8.1.Final

1.8.8.Final

Release date Description Download link
2021-04-02

Optimized features

  • The logic for sending heartbeats is optimized.
  • The following issue is fixed: The SDK uses an excessive amount of memory.
  • The following issue is fixed: A message is sent back to the broker if the consumer fails to consume the message.
  • The following issue is fixed: A topic-specific message cache limit does not take effect.
ons-client-1.8.8.Final

1.8.7.4.Final

Release date Description Download link
2021-02-08

Optimized features

  • The following issue is fixed: The consumption of ordered messages is delayed in specific scenarios.
  • The following issue is fixed: Ports are occupied for liveness detection on message producers.
ons-client-1.8.7.4.Final
Note If you use the SDK for Java V1.8.7.1.Final or later to consume ordered messages, we recommend that you update the SDK client to the latest version.

1.8.7.3.Final

Release date Description Download link
2021-01-05

Added features

Optimized features

  • The following issue is fixed: A large number of duplicate messages may be generated if an exception such as a network exception occurs.
ons-client-1.8.7.3.Final

1.8.7.1.Final

Release date Description Download link
2020-07-09

Added features

  • The Ordered Message 2.0 feature is supported by Enterprise Platinum Edition instances. This feature provides globally ordered messages that are highly available and scalable and partitionally ordered messages that support the secondary hash function.
  • The methods for managing instances that have namespaces and instances that do not have namespaces are unified.

Optimized features

  • The retry logic upon failures and the server circuit breaking mechanism are optimized. This can improve service availability and reduce the negative impacts of service upgrades, Elastic Compute Service (ECS) instance downtime, and virtual IP address (VIP) jitters on your business.
ons-client-1.8.7.1.Final

1.8.5.Final

Release date Description Download link
2020-05-10

Added features

  • The pull mode is added.
ons-client-1.8.5.Final
Notice Before you use the pull mode, make sure that your Message Queue for Apache RocketMQ instance is an Enterprise Platinum Edition instance.

1.8.4.Final

Release date Description Download link
2019-09-27

Added features

  • JDK 1.6 is supported.
  • Asynchronous message retries are supported.
  • Synchronous message retries are supported in scenarios where brokers are busy.
ons-client-1.8.4.Final

ons-client v1.8.0.Final

Release date Description Download link
2019-02-21

Fixed issues

  • Issues related to the automatic retry logic are fixed. By default, a maximum of three retries are allowed. This logic is applicable to scenarios in which a producer fails to send a message to a topic in an instance in a synchronous manner.
ons-client-1.8.0.Final

1.7.8.Final

Release date Description Download link
2018-07-06

Added features

  • STS tokens can be dynamically renewed.

Fixed issues

  • The default size of a single log file is changed from 1 GB to 64 MB.
  • The following issue is fixed: Two copies of logs are generated.
ons-client-1.7.8.Final

Earlier versions

1.7.7.Final

Release date Description Download link
2018-04-25

Fixed issues

  • The following issue is fixed: Message traces cannot be sent when multiple consumer or producer instances are initialized in the same process. This issue may occur in V1.7.5 and V1.7.6. We recommend that you update your SDK.
ons-client-1.7.7.Final

1.7.6.Final

Release date Description Download link
2018-04-04

Added features

  • All log frameworks are supported.

Fixed issues

  • Apache Log4j2 is supported.
  • The following issue is fixed: A client is unexpectedly shut down when it fetches name servers.
  • The Fastjson version is updated to 1.2.48.
ons-client-1.7.6.Final

1.7.5.Final

Release date Description Download link
2018-03-23

Fixed issues

  • The following issue is fixed: Internal dependencies of Alibaba Cloud are used.
ons-client-1.7.5.Final

1.7.4.Final

Release date Description Download link
2018-03-02

Added features

  • Access to Message Queue for Apache RocketMQ by using STS tokens is supported.
  • Priorities can be specified for Message Queue for Apache RocketMQ brokers when you send message trace data. By default, the message trace data is preferentially sent to Message Queue for Apache RocketMQ brokers of the current cluster.

Fixed issues

  • The JDK 1.6 incompatibility issue is fixed.
ons-client-1.7.4.Final

1.7.2.Final

Release date Description Download link
2018-01-25

Added features

  • Encryption in transit is supported for Enterprise Platinum Edition instances. This feature allows you to encrypt data at the transport layer when the AccessKey ID and AccessKey secret are used to generate a signature. This feature helps improve data security.
  • SQL attribute filtering is supported for consumers in Enterprise Platinum Edition instances. This makes message subscription more efficient.
  • A client can be configured to automatically detect changes in a name server. This way, you can perform O&M operations and switchovers to ensure that the client is highly available.
  • The exact version of a client is reported to the broker when the client initiates a connection request to the broker.
ons-client-1.7.2.Final

1.7.1.Final

Release date Description Download link
2017-12-19

Added features

  • A custom callback thread pool can be configured when you call an API operation to send messages in an asynchronous manner.
  • The JVM -D parameter Dclient.callback.executor.thread.nums is added to the request parameters of the API operation that sends messages in an asynchronous manner. This parameter is used to manage the number of threads in the public thread pool. For example, you can set this parameter to 10.

Fixed issues

  • The following issue is fixed: The cache count is not decreased when a message is sent back to the broker due to a consumption timeout.
  • The following issue is fixed: The asynchronous semaphore of a client is released before the scheduled point in time.
ons-client-1.7.1.Final

1.7.0.Final

Release date Description Download link
2017-10-23

Added features

  • The cache policy for messages on clients is modified based on the following dimensions: message count and cache size.

Optimized features

  • The ProducerName parameter of the built-in tracing module is optimized for the client to allow users to use different values.

Fixed issues

  • The following issue is fixed: A client trace thread prevents the client from exiting as expected.
  • The following issue is fixed: The message trace ShutDownHook is created multiple times.
ons-client-1.7.0.Final

1.6.1.Final

Release date Description Download link
2017-08-31

Optimized features

  • Java documentation is provided for all client API operations.
  • The method that is used to obtain client addresses is optimized. This allows you to obtain client addresses without the need to modify the hostname configuration in /etc/hosts.
ons-client-1.6.1.Final

1.6.0.Final

Release date Description Download link
2017-07-31

Added features

  • The client is shaded in the source code to ensure correct debugging.
  • The BornHost and BornTimestamp message attributes can be viewed on the client.
  • The BatchConsumer operation is added. This operation can be called to consume multiple messages at a time.
  • The following demo is added: calling the BatchConsumer operation based on the Spring settings to consume multiple ordered messages at a time.

Optimized features

  • The shard key is stored in the message structure for partitionally ordered messages.
  • Integer values are supported for message attribute settings.
ons-client-1.6.0.Final

What to do next

Prepare the environment