This 90th edition of the Kafka Monthly Digest covers what happened in the Apache Kafka community in July 2025.
For last month’s digest, see Kafka Monthly Digest: June 2025.
Releases
There are two releases in progress:
4.1.0
The release process for 4.1.0 continued. I published RC0 on July 11, but a number of issues (KAFKA-19504, KAFKA-19427, KAFKA-19520, KAFKA-19522) were found. I then published RC1 on July 21 and the vote is currently on-going. You can find the release plan in the wiki.
4.0.1
Christo Lolov published the first release candidate of this bugfix version on July 25. It contains over 40 fixes since 4.0.0. The vote is currently on-going. The release plan is available in the wiki.
Kafka Improvement Proposals
Last month, the community submitted 13 KIPs (KIP-1190 to KIP-1202). I'll highlight a few of them:
- KIP-1189: Allow custom topic configurations for RemoteStorageManager: This KIP proposes allowing users to add custom configurations to topics. The goal is to provide context to tiered storage plugins to enable handling specific topics differently. For example this could be selecting a different S3 storage classes, improving data lineage or applying specific performance/security tuning.
- KIP-1191: Dead-letter queues for share groups: Kafka 4.0.0 introduced shared groups, as known as queues. If a record is unable to be processed by a shared group, it's currently marked as archived and ignored. This KIP proposes sending a record to a dead letter queue topic and attaching headers with details about the unprocessable records so the failure is tracked and the failing record can easily be retrieved and reviewed if needed.
- KIP-1198: Implement a ConfigKey.Builder class: Kafka exposes the
ConfigDef
API for plugins and connectors to define their own configurations. There are a lot of options for configurations, such as their name, type, default value, allowed values, requirements, documentation, etc. All of these are handled via method overrides and this makes this API pretty cumbersome to use. The goal of this KIP is to provide a fluent API so it's more flexible and easier to use and maintain.
Community Releases
- strimzi-kafka-operator 0.47: Strimzi is a Kubernetes Operator for running Kafka. This new release now exposes progress of cluster rebalances via Cruise Control and adds support for Kubernetes Image Volumes to inject custom plugins into your broker and Connect images.
- Debezium 3.2: Debezium is a Change Data Capture platform. The connectors are now built and tested with Kafka 4.0. As usual this new release is packed with features and improvements for all connectors.
- Librdkafka 2.11: Librdkafka is a Kafka client in C/C++. This release adds support for rebootstrapping (KIP-1102) and OAuth jwt-bearer grant type (KIP-1139).
Blogs
I selected some interesting blog articles that were published last month:
To learn more about Kafka, visit Red Hat Developer's Apache Kafka topic page.