Confluent
Confluent logoConfluent · Feature trail

Kafka Broker and Streams Enhancements

126 posts · Jun 2015 – May 2026

What this trail covers

This feature thread tracks the evolution of Kafka Streams and ksqlDB, focusing on enhancing availability, performance, and query capabilities. It covers improvements in serving data from stale stores during rebalances (KIP-535), fetching data from specific partitions (KIP-562), and fixing unnecessary standby restoration bugs (KAFKA-9169). The goal is to enable Kafka Streams to challenge traditional databases by providing high availability and low-latency serving, reducing developer overhead and enabling effective scaling for high-volume data processing through strategies like partitioning, scaling out/up, and fine-tuning configuration parameters.

All Confluent trails
  1. Apache Kafka 4.3 released: 25 KIPs, Kafka Streams, Share Group Controls, Broker Isolation, and moreThis post details the release of Apache Kafka 4.3, highlighting 25 KIPs. Key broker enhancements include follower fetch from tiered offset (KIP-1023), mechanism to cordon brokers and log directories (KIP-1066), group coordinator buffer size configurations (KIP-1196), admin configs for tiered storage (KIP-1208), alignment of num.partitions and default.replication.factor (KIP-1211), KRaft fetch and snapshot byte size configurations (KIP-1219), default min.insync.replicas for \_\_remote\_log\_metadata topic (KIP-1235), additional share group configurations (KIP-1240), assignment epochs for consumer groups (KIP-1251), partition size percentage metrics (KIP-1257), OAuth client assertion support (KIP-1258), and group coordinator assignment batching (KIP-1263). Kafka Streams updates include state store managed changelog offsets (KIP-1035), public API for Bytes utils (KIP-1247), in-memory state store size metrics (KIP-1250), state cleanup on startup (KIP-1259), extended ProcessingExceptionHandler for GlobalThread (KIP-1270), storing headers in state stores (KIP-1271), and DSL opt-in for headers-aware state stores (KIP-1285). Kafka Connect improvements include batch offset translation (KIP-1239) and enhanced configurable component discoverability (KIP-1273). MirrorMaker metrics are updated to use KIP-877 (KIP-1280). Deprecation notices are given for streams-scala, group.coordinator.rebalance.protocols, and existing MirrorMaker metrics.
  2. Introducing Apache Kafka 3.7Introduces early access support for JBOD disk failure handling in KRaft (KIP-858). Adds broker-side support for client-level metrics via a standardized telemetry interface (KIP-714) and a mechanism to configure these metrics (KIP-1000). Previews the next generation of the Consumer Rebalance Protocol for improved efficiency (KIP-848). Optimizes leader discovery for clients to reduce latency during leadership changes (KIP-951). Provides an official Apache Kafka Docker image (KIP-975). Implements exponential backoff for Kafka client retries to reduce overload after broker failures (KIP-580). Adds new metrics for Tiered Storage monitoring (KIP-963). Enables independent stopping of KRaft processes (KIP-979). Adds server-side transaction verification to prevent hanging transactions (KIP-890). Marks old client protocol API versions (pre-2.1) as deprecated for removal in Kafka 4.0 (KIP-896). Allows AdminClient to communicate directly with the KRaft Controller Quorum for operations like DESCRIBE_QUORUM and INCREMENTAL_ALTER_CONFIGS (KIP-919). Enables dynamic reloading of certificates with different DN/SANs (KIP-978). Adds a `CurrentControllerId` metric to identify the current controller (KIP-1001). Introduces 11 new metrics for measuring KRaft performance (KIP-938). Deprecates Java 11 support for Kafka broker and tools, planned for removal in Kafka 4.0 (KIP-1013). In Kafka Streams, introduces rack-aware task assignment strategies (`balanced_subtopology`) (KIP-925). Expands default DSL store configuration to custom types with support for RocksDB and in-memory stores (KIP-954). Relaxes the non-null key requirement for certain left-joins (KIP-962). Adds a new interface for handling standby task updates (KIP-988). Adds `VersionedKeyQuery` and `MultiVersionedKeyQuery` for querying versioned state stores (KIP-960, KIP-968). Adds `reverseRange` and `reverseAll` queries for key-value stores in IQv2 (KIP-985).