Skip to content

Releases: spring-projects/spring-kafka

v2.9.8

17 Apr 18:50
Compare
Choose a tag to compare

⭐ New Features

  • Support Dynamic Micrometer Tags Based on Consumer/Producer Record #2649

🐞 Bug Fixes

  • "resetStateOnExceptionChange" has no effect, because the cause of "ListenerExecutionFailedException" is always a "TimestampedException" #2646
  • Races in KafkaListenerAnnotationBeanPostProcessor on scope=prototype bean instantiation #2644

🔨 Dependency Upgrades

  • Upgrade Spring Framework, Data, Reactor, Micrometer Versions #2656

External Links

v3.0.5

21 Mar 16:14
Compare
Choose a tag to compare

🐞 Bug Fixes

  • Deadlock on lifecycleMonitor #2627
  • Allow the Spring Cloud Stream Binder to Inject a KafkaAdmin for Observability #2626
  • Reclassify Exception in FallbackBatchErrorHandler When Exception Changes #2620
  • Spring Kafka Listener uses stale oauthbearer token, fails to connect after initial token expired. #2612

🔨 Dependency Upgrades

  • Upgrade Micrometer, Reactor, Spring Versions #2634

External Links

v2.9.7

21 Mar 14:43
Compare
Choose a tag to compare

🐞 Bug Fixes

  • Deadlock on lifecycleMonitor #2630
  • Reclassify Exception in FallbackBatchErrorHandler When Exception Changes #2623
  • Spring Kafka Listener uses stale oauthbearer token, fails to connect after initial token expired. #2614
  • Synchronized kafka transaction is not committed nor rolled back when code from custom "afterCommit" throws exception #2606
  • Spring Messaging batch payload incompatible with Kotlin #2603
  • KafkaMessageListenerContainer pauses for a long time after error handling #2598

🔨 Dependency Upgrades

  • Upgrade Spring Framework to 5.3.26 #2633

External Links

v3.0.4

02 Mar 20:15
Compare
Choose a tag to compare

⭐ New Features

  • spring-kafka-test does not work with spring native graalvm #2582
  • GH-2496: Reuse retry topic for maxInterval delay #2497
  • Feature Request: Provide DestinationTopic.Properties#isRetryTopic() method #2377

🐞 Bug Fixes

  • Synchronized kafka transaction is not commited nor rolled back when code from custom "afterCommit" throws exception #2604
  • Spring Messaging batch payload incompatible with Kotlin #2600
  • KafkaMessageListenerContainer pauses for a long time after error handling #2596

📔 Documentation

  • Updated README.md #2594

🔨 Dependency Upgrades

  • Upgrade Spring Framework, Reactor Versions #2607

❤️ Contributors

Thank you to all the contributors who worked on this release:

@esivakumar18 and @jgslima

External Links

v3.0.3

21 Feb 17:42
Compare
Choose a tag to compare

⭐ New Features

  • Allow to use KafkaListenerContainerFactory with custom message converter for batch and record listeners #2566
  • Repeating headers in Non-Blocking Retry Mechanism #2549

🐞 Bug Fixes

  • ProducerFactory's argument txIdPrefix of createProducer not marked as @Nullable #2583
  • Container Does Not Pause for Missing Acks After a Rebalance #2581
  • Non-blocking retries: partition rebalance causes emergency consumer stop #2576
  • NPE in FailedBatchProcessor if Reported Index is Out of Bounds #2558
  • An application using default spring boot configuration fails at the startup when there are multiple @KafkaListener with @RetryableTopic #2554

📔 Documentation

  • The documentation of the autoFlush seems to be confusing (to me) #2562
  • GH-2516: Fix code example in the documentation for for Non-Blocking Retries - DLT Failure Behavior #2517

🔨 Dependency Upgrades

  • Upgrade Jackson, Micrometer, Reactor, Spring Data, Spring Framework Versions #2592
  • Upgrade to Apache Kafka 3.3.2 #2552

🔨 Tasks

  • Update Gradle Enterprise plugin #2578

❤️ Contributors

Thank you to all the contributors who worked on this release:

@jprinet and @jucosorin

External Links

v2.9.6

21 Feb 17:17
Compare
Choose a tag to compare

⭐ New Features

  • GH-2566: Both Converters in Container Factory #2570
  • Repeating headers in Non-Blocking Retry Mechanism #2551

🐞 Bug Fixes

  • Container Does Not Pause for Missing Acks After a Rebalance #2587
  • ProducerFactory's argument txIdPrefix of createProducer not marked as @Nullable #2585
  • Non-blocking retries: partition rebalance causes emergency consumer stop #2580
  • GH-2565: Topic partition is not resumed for RetryTopic #2569
  • GH-2558: Fix Possible NPE in FailedBatchProcessor #2560
  • The RetryTopicBeanNames.DEFAULT_SCHEDULER_WRAPPER_BEAN_NAME accidentally points to defaultRetryTopicKafkaTemplate #2557

📔 Documentation

  • Update Docs For Overriding Boot Dependencies #2564
  • GH-2516: Fix code example in the documentation for for Non-Blocking Retries - DLT Failure Behavior #2556

🔨 Dependency Upgrades

  • Upgrade Jackson, Micrometer, Reactor, Spring Data Versions #2591

❤️ Contributors

Thank you to all the contributors who worked on this release:

@cenkakin and @jucosorin

External Links

v3.0.2

17 Jan 14:56
Compare
Choose a tag to compare

⭐ New Features

  • GH-2542: FallbackBatchErrorHandler Improvement #2543
  • Add possibility to remove custom headers in method: addHeadersFunction(...) from DeadLetterPublishingRecoverer #2528
  • Cluster Id: Use Producer/Consumer Bootstrap Servers if Different to the Context's KafkaAdmin Servers #2505

🐞 Bug Fixes

  • Get Cluster Id for Observation Lazily #2538
  • Topic partition is not resumed after re-assignment for RetryTopic #2525
  • KafkaListener Regression - Pseudo Bean __listener Not Available in the Id Attribute #2521

📔 Documentation

  • Remove outdated information for transactional.id #2524
  • GH-2511: Fix code examples in the documentation for for Non-Blocking Retries - BackOff Configuration #2512

🔨 Dependency Upgrades

  • Upgrade Spring, Micrometer, Reactor Versions #2548

🔨 Tasks

  • kafka-clients 3.3.2 Compatibility #2540
  • Refactor Switch Expressions #2535
  • Upgrade Samples to 3.0.x #2508

❤️ Contributors

Thank you to all the contributors who worked on this release:

@LukasHeimann, @jucosorin, and @truepele

External Links

v2.9.5

17 Jan 14:54
Compare
Choose a tag to compare

⭐ New Features

  • GH-2542: FallbackBatchErrorHandler Improvement #2544
  • Add possibility to remove custom headers in method: addHeadersFunction(...) from DeadLetterPublishingRecoverer #2530

🐞 Bug Fixes

  • Topic partition is not resumed after re-assignment for RetryTopic #2534

📔 Documentation

  • GH-2511: Fix code examples in the documentation for for Non-Blocking Retries - BackOff Configuration #2513

🔨 Dependency Upgrades

  • Upgrade Spring, Micrometer, Reactor Versions #2547

🔨 Tasks

  • kafka-clients 3.3.2 Compatibility #2541

❤️ Contributors

Thank you to all the contributors who worked on this release:

@jucosorin and @truepele

External Links

v3.0.1

20 Dec 14:44
Compare
Choose a tag to compare

⭐ New Features

  • Add Option to Set Listener Thread Name #2501

🐞 Bug Fixes

  • Error on executing tests with spring-kafka-test 3.0.0 #2490
  • Duplicate consumption triggered by consumer group rebalance #2489

📔 Documentation

  • Document Parameter Annotation Limitations #2499

🔨 Dependency Upgrades

  • Upgrade Spring Framework (6.0.3), Micrometer (1.10.2), Reactor (2022.0.1) #2507

❤️ Contributors

Thank you to all the contributors who worked on this release:

@mikael-carlstedt

v2.9.4

20 Dec 14:35
Compare
Choose a tag to compare

🐞 Bug Fixes

  • Duplicate consumption triggered by consumer group rebalance #2492

📔 Documentation

  • Fix Consumer Thread Naming Documentation #2504
  • Document Parameter Annotation Limitations #2500

❤️ Contributors

Thank you to all the contributors who worked on this release:

@mikael-carlstedt