Release Dates

  • KIP Freeze:  (A KIP must be accepted by this date in order to be considered for this release. Note, any KIP that may not be implemented in a week, or that might destabilize the release, should be deferred.)
  • Feature Freeze:  (major features merged & working on stabilization, minor features have PR, release branch cut; anything not in this state will be automatically moved to the next release in JIRA)
  • Code Freeze:
  • At least two weeks of stabilization will follow Code Freeze.


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 earliest possible release date is 2w after code freeze, release candidates (RCs) will roll out as needed until the release vote passes.

The release manager is Bruno Cadonna 

How to Contribute

Before code freeze:

  • Participate in votes and discussions to land or postpone the open KIPs.
  • Review patches. We anticipate that this release, as it usually happens, will be bottlenecked mostly on reviews. The more reviewers, the more content we can fit in.
  • Write unit/integration/system tests. We want to preserve the tradition of high-quality releases in Apache Kafka. 

After code freeze:

  • Write more unit/integration/system testsWe want to preserve the tradition of high-quality releases in Apache Kafka.
  • Improve documentation.
  • Test the release candidates. 
  • Open blocker JIRAs on critical issues found. Open non-blocker JIRAs on any other issues found.
  • Fix critical bugs.
  • Review bug fixes.
  • Vote on release candidates. Even though only PMC votes are binding, community votes are super important as we evaluate the readiness of the release.

Open Issues

Key Summary T Created Updated Due Assignee Reporter Priority Priority Priority Priority P Status Resolution
Loading...
Refresh


Also feel free to refer to this release page for more details of the included tickets (requires log in to the Apache Kafka Jira project).

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-815: Support max-timestamp in GetOffsetShell

KAFKA-13509 - Getting issue details... STATUS

Tools
KIP-814: Static membership protocol should let the leader skip assignment

KAFKA-13435 - Getting issue details... STATUS

Core/Clients
KIP-811: Add config repartition.purge.interval.ms to Kafka Streams

KAFKA-13549 - Getting issue details... STATUS

Streams
KIP-810: Allow producing records with null values in Kafka Console Producer

KAFKA-13595 - Getting issue details... STATUS

Clients
KIP-808: Add support for different unix precisions in TimestampConverter SMT

KAFKA-13511 - Getting issue details... STATUS

Connect
KIP-806: Add session and window query over kv-store in IQv2

KAFKA-13494 - Getting issue details... STATUS

Streams
KIP-805: Add range and scan query over kv-store in IQv2

KAFKA-13492 - Getting issue details... STATUS

Streams
KIP-801: Implement an Authorizer that stores metadata in __cluster_metadata

KAFKA-13646 - Getting issue details... STATUS

Core
KIP-800: Add reason to JoinGroupRequest and LeaveGroupRequest

KAFKA-13451 - Getting issue details... STATUS

Core/Clients
KIP-798: Add possibility to write kafka headers in Kafka Console Producer

KAFKA-13351 - Getting issue details... STATUS

Clients
KIP-796: Interactive Query v2

KAFKA-13479 - Getting issue details... STATUS

Streams
KIP-791: Add Record Metadata to StateStoreContext

KAFKA-13426 - Getting issue details... STATUS

Streams
KIP-788: Allow configuring num.network.threads per listener

KAFKA-7589 - Getting issue details... STATUS

Core
KIP-784: Add top-level error code field to DescribeLogDirsResponse

KAFKA-13527 - Getting issue details... STATUS

Core/Clients
KIP-779: Allow Source Tasks to Handle Producer Exceptions

KAFKA-13348 - Getting issue details... STATUS

Connect
KIP-769: Connect APIs to list all connector plugins and retrieve their configuration definitions

KAFKA-13510 - Getting issue details... STATUS

Connect
KIP-764: Configurable backlog size for creating Acceptor

KAFKA-9648 - Getting issue details... STATUS

Core
KIP-708: Rack awareness for Kafka Streams

KAFKA-6718 - Getting issue details... STATUS

Streams
KIP-704: Send a hint to the partition leader to recover the partition

KAFKA-13587 - Getting issue details... STATUS

Core
KIP-591: Add Kafka Streams config to set default state store

KAFKA-9847 - Getting issue details... STATUS

Streams
KIP-471: Expose RocksDB Metrics in Kafka Streams (implementation completed)

KAFKA-8941 - Getting issue details... STATUS

Streams


Postponed to subsequent release

KIPJIRAComponent
KIP-812: Introduce another form of the `KafkaStreams.close()` API that forces the member to leave the consumer group

KAFKA-13217 - Getting issue details... STATUS

Streams
KIP-726: Make the "cooperative-sticky, range" as the default assignor

KAFKA-12473 - Getting issue details... STATUS

Clients
KIP-719: Deprecate Log4J Appender

KAFKA-12399 - Getting issue details... STATUS

Core
KIP-709: Extend OffsetFetch requests to accept multiple group ids.

KAFKA-13043 - Getting issue details... STATUS

Core/Clients
KIP-653: Upgrade log4j to log4j2

KAFKA-9366 - Getting issue details... STATUS

All
KIP-627: Expose Trogdor-specific JMX Metrics for Tasks and Agents

KAFKA-8528 - Getting issue details... STATUS

Trogdor
KIP-618: Exactly-Once Support for Source Connectors

KAFKA-10000 - Getting issue details... STATUS

KAFKA-6080 - Getting issue details... STATUS

Connect
KIP-405: Kafka Tiered Storage

KAFKA-7739 - Getting issue details... STATUS

Core
KIP-390: Support Compression Level

KAFKA-7632 - Getting issue details... STATUS

Core/Clients
  • No labels