The Wire · Showcase
SPRING-KAFKA FIXES THREE CRITICAL BATCH LISTENER BUGS OVERNIGHT
By RepoJournal · Filed · About Spring
Spring-Kafka shipped fixes for broken rollback handling, commit timing logic, and null pointer crashes that could silently fail message processing in production.
Three separate batch listener regressions are now patched across the stack. The first [1] fixes a critical bug where empty record lists bypass the AfterRollbackProcessor entirely, leaving failed batches unseekable on retry. The second [2] corrects a logic flaw in COUNT_TIME commit mode where time-based acknowledgments were never evaluated, causing batches to commit on count alone and ignore configured time windows. The third [3] eliminates a null pointer exception in StreamsBuilderFactoryBean when Kafka properties are unset, which could crash the entire factory during initialization. All three are marked for immediate cherry-pick to 4.0.x and 3.3.x. On the integration desk, Spring-Integration fixed an MQTT v5 payload conversion bug [4] where SmartMessageConverter was applied in the wrong direction, breaking custom payload transformations and misaligning the inbound adapter with the outbound contract. The security desk is quiet: a routine docs dependency bump .
Action items
- → Upgrade spring-kafka immediately if running batch listeners with rollback processing spring-projects/spring-kafka [immediate]
- → Verify COUNT_TIME commit mode behavior in production if configured - may have been silently falling back to count-only spring-projects/spring-kafka [plan]
- → Update spring-integration if using MQTT v5 with custom payload converters spring-projects/spring-integration [plan]
References
- [1] GH-4439: Pass full record list to batch rollback processor ↗ spring-projects/spring-kafka
- [2] GH-4444: Consider ackTime for COUNT_TIME commits ↗ spring-projects/spring-kafka
- [3] Fix NPE in StreamsBuilderFactoryBean when Properties are null (#4435) spring-projects/spring-kafka
- [4] GH-10990: Fix MQTT v5 inbound payload conversion ↗ spring-projects/spring-integration
FAQ
- What changed in Spring on May 29, 2026?
- Spring-Kafka shipped fixes for broken rollback handling, commit timing logic, and null pointer crashes that could silently fail message processing in production.
- What should Spring teams do about it?
- Upgrade spring-kafka immediately if running batch listeners with rollback processing • Verify COUNT_TIME commit mode behavior in production if configured - may have been silently falling back to count-only • Update spring-integration if using MQTT v5 with custom payload converters
- Which Spring repositories shipped on May 29, 2026?
- spring-projects/spring-kafka, spring-projects/spring-integration