Release Dates


These dates are goals and subject to change, but we expect to stay on the Time Based Release Plan unless unexpected critical issues come up. While the target release date is fixed at ~2w after code freeze, RCs will roll out as needed until the release vote passes.

The release manager is Bill Bejeck

How to Contribute

Before code freeze:

After code freeze:

Open Issues


Also feel free to refer to this release page for more details of the included tickets.

Planned KIP Content

Note: The planned content is not binding - final content will be based the features committed by branch-cutting date. See Kafka Improvement Proposals for the full list of KIPs.

KIPJIRAComponent
KIP-662: Throw Exception when Source Topics of a Streams App are Deleted

Kafka Streams
KIP-654: Aborted transaction with non-flushed data should throw a non-fatal exception

Kafka Clients
KIP-651 - Support PEM format for SSL certificates and private key


Core
KIP-648: Renaming getter method for Interactive Queries

Kafka Streams
KIP-632: Add DirectoryConfigProvider


KIP-626: Rename StreamsConfig config variable name

Kafka Streams
KIP-620 Deprecate ConsumerConfig#addDeserializerToConfig and ProducerConfig#addSerializerToConfig

Kafka Clients
KIP-617: Allow Kafka Streams State Stores to be iterated backwards

Kafka Streams
KIP-616: Rename implicit Serdes instances in kafka-streams-scala

Kafka Streams
KIP-613: Add end-to-end latency metrics to Streams

Kafka Streams
KIP-612: Ability to Limit Connection Creation Rate on Brokers

Core
KIP-607: Add Metrics to Kafka Streams to Report Properties of RocksDB

Kafka Streams
KIP-601: Configurable socket connection timeout in NetworkClient

Core
KIP-599: Throttle Create Topic, Create Partition and Delete Topic Operations

Core
KIP-597: MirrorMaker2 internal topics Formatters


KIP-584: Versioning scheme for features


KIP-572: Improve timeouts and retries in Kafka Streams

Kafka Streams
KIP-554: Add Broker-side SCRAM Config API

Core
KIP-545: support automated consumer offset sync across clusters in MM 2.0

Mirror Maker 2.0
KIP-497: Add inter-broker API to alter ISR

Core
KIP-478 - Strongly typed Processor API

Kafka Streams
KIP-450: Sliding Window Aggregations in the DSL

Kafka Streams
KIP-431: Support of printing additional ConsumerRecord fields in DefaultMessageFormatter

Kafka Tools


Postponed to subsequent release


KIPJIRAComponent
KIP-671: Introduce Kafka Streams Specific Uncaught Exception Handler

,

Kafka Streams
KIP-653: Upgrade log4j to log4j2


KIP-623: Add "internal-topics" option to streams application reset tool

Kafka Streams
KIP-608 - Expose Kafka Metrics in Authorizer

Core
KIP-590: Redirect Zookeeper Mutation Protocols to The Controller

Core
KIP-589 Add API to update Replica state in Controller

Core
KIP-588: Allow producers to recover gracefully from transaction timeouts

Kafka Clients
KIP-580: Exponential Backoff for Kafka Clients

Kafka Clients
KIP-508: Make Suppression State Queriable

Kafka Streams
KIP-466: Add support for List<T> serialization and deserialization


KIP-418: A method-chaining way to branch KStream

Kafka Streams
KIP-373: Allow users to create delegation tokens for other users


KIP-359: Verify leader epoch in produce requests

Core
KIP-280: Enhanced log compaction

Core
KIP-216: IQ should throw different exceptions for different errors

Kafka Streams
KIP-81: Bound Fetch memory usage in the consumer

Kafka Clients