Spring for Apache Kafka 3.2.0, 3.1.5 and 3.0.17 available now

On behalf of the team and everyone in the community who contributed, we are pleased to announce the general availability of Spring for Apache Kafka 3.2.0.

Spring for Apache Kafka 3.2.0

Th 3.2.0 GA version includes new additions, feature enhancements, bug fixes, and documentation updates. For more details on all the changes in the 3.2.0 release, please see https://github.com/spring-projects/spring-kafka/releases/tag/v3.2.0.

The upcoming Spring Boot 3.3.0 will include the 3.2.0 version of Spring for Apache Kafka.

Since this is the first GA version in the 3.2.x line, here is a recap of all the enhancements and features that went into this new generation of Spring for Apache Kafka.

  • This version uses the Kafka Client version 3.7.0, that introduced the new consumer group protocol. This is included as an early access feature in the 3.7.0 client and not meant to be used in production. We recommend the new consumer group protocol at this point only for testing purposes. By default, the classic consumer is used in Spring for Apache Kafka and when testing the new consumer group protocol, that must be opted in using the group.protocol consumer property. For more information, see this.
  • Here is a new sample application that demonstrates the early access version of the new consumer group protocol.
  • The KRaft mode is disabled by default in Embeddedkafka due to certain limitations in KafkaClusterTestKit. If anyone wants to try EmbeddedKafka in KRaft mode, they have to enable it via the kraft property on the EmbeddedKafka. In addition, the new consumer group protocol only works in kraft mode and therefore, when testing this new protocol, we recommend not using EmbeddedKafka with kraft mode enabled due to the aforementioned limitations in KafkaClusterTestKit. To test the new consumer group protocol, we recommend using a real broker in KRaft mode. For more info, see here.
  • Ability to enforce a rebalance on the Consumer programmatically.
  • New API for interactive queries in Kafka Streams support in the framework.
  • Customizations on the transaciton id suffix.
  • Provide a way to route to different DLT’s based on exception types in non-blocking retries.
  • Asynchronous Kafka Listener return types.
  • Improvements in AfterRollbackProcessor to skip entire batch of records that keeps failing.
  • Non-blocking retries support on class level @KafkaListener. For more detail see here
  • RetryTopicConfiguration improvements
  • New API method to seek to an offset based on a user provided function. For more information, see the reference docs.
  • @PartitionOffset support for seek position.
  • Removed many of the Apache Kafka specific native runtime hints in Spring for Apache Kafka in preference to the same support in graalvm-reachability-metadata.

In addition, more enhancements and bug fixes have been made on throughout the 3.2.0 journey. For information on all changes, see the corresponding milestones and RC releases.




Spring for Apache Kafka 3.1.5 and 3.0.17

Spring for Apache Kafka 3.1.5 and 3.0.17 have also been released. 3.0.17 is the last patch release in the 3.0.x generation as this is out of OSS support. This version is only going to be commercially available going forward. For more details on the commercial support line, please see the support timeline.

Both patch releases include a few improvements and bug fixes. For more details, see the following change logs.



Spring Boot 3.1.12 and 3.2.6 releases will include Spring for Apache Kafka 3.0.17 and 3.1.15, respectively.

We want to express our gratitude to everyone who contributed to these releases. Your contributions are invaluable and play a crucial role in the continuous improvement of Spring for Apache Kafka.

Staying in touch with the project

The following are the usual avenues to engage with the project.

GitHub | Issues | Documentation | Stack Overflow

点赞7 分享
评论 抢沙发