There’s a new post on the Confluent blog. Here’s a snippet from it:
On behalf of the Apache Kafka® community, it is my pleasure to announce the release of Apache Kafka 3.1.0. The 3.1.0 release contains many improvements and new features. We’ll highlight […]
Head over to the blog to read the full article
TL;DR:
While KRaft is still not recommended for production (known gaps), this release contains multiple bugs fixes and new features.
Tiered Storage work continues, with the goal of unlocking infinite scaling and faster rebalance times.
With Apache Kafka 3.1:
- The
FetchRequest
supports topic IDs.
- Enhanced naming consistency for 3 new client metrics with millis and nanos.
- Built-in and production-grade implementation to allow Kafka to connect to an OpenID identity provider for authentication and token retrieval.
- Two new metrics are exposed by both the ZooKeeper and KRaft controller:
ActiveBrokerCount
and FencedBrokerCount
to expose the number of active and fenced brokers in the cluster known by the controller.
- The eager rebalance protocol is deprecated, so users on the eager protocol should prepare to upgrade their applications to the cooperative protocol.
- A new
TaskId
field is introduced to the StreamsException
class, with a getter API to expose it.
- Support for foreign-key joins on tables with custom partitioners.
- Extension of the existing range interfaces semantics in the
ReadOnlySessionStore
and the ReadOnlyWindowStore
to support unbounded ranges. Similarly extension of the existing range
and reverseRange
interfaces semantics in the ReadOnlyKeyValueStore
to support unbounded ranges.
- A new metric introduced, called
blocked-time-total
that measures the total time a Kafka Streams thread has spent blocked on Kafka.
- Additional configuration introduced, to control MirrorMaker2 internal topics naming convention.