DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
| Table of Contents |
|---|
Status
Current state: "Adopted"
Discussion thread: here
...
Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).
Discussed
Motivation
Kafka 3.7.x was meant to be the last minor release within the 3.x series followed then by a 4.0 release where Apache Zookeeper will be removed from the code base.
...
This way community members can safely test KRaft without the need to perform downgrades or manual workarounds, as ZooKeeper is meant to be removed in 4.0.
Public Interfaces
No direct interfaces will be changed by this KIP
Proposed Changes
We propose the following:
- Have a release 3.8 and 3.x 9 after 3.7.0
- The aim of this release would be KRaft strategic feature parity with Zookeeper
- Once 3.89.0 is branched, immediately start with the 4.0.x release
- 3.8.x 9 would be the last minor release within the 3.x series.
This assumes all must have features / KIPs are implemented in 3.8. Otherwise we would need to inject a 3.9 version in between 3.8 and 4.0
Scope
The following KIPs were identified by the community as blockers items that would need to be present in a 3.x release before moving to a potential 4.0 release.
...
| KIP | Status |
|---|---|
| KIP-853: KRaft Controller Membership Changes | Under Discussion |
A way of enabling unclean leader election by default in KRaft (Could be KIP-966 or others) | N/A |
Timeline
Release 3.7.0: TBD, probably early January 2024
Release 3.8.0: 3 to 4 months after 3.7 (or earlier if all required KIPs are already merged)
Release 3.9.0: 1 month after 3.8 (or earlier if all required KIPs are already merged)
...
This assumes all must have features / KIPs are implemented in 3.8. Otherwise we would need to inject a 3.9 version in between 3.8 and 4.0
Compatibility, Deprecation, and Migration Plan
Not relevant for this KIP
Test Plan
This release will follow the same testing plan as usual, but we encourage community members who haven't migrated yet to KRaft, to test the Release Candidates (or even specific trunk builds) in order to detect as many potential problems with KRaft when used under these, potentially, new scenarios.
Rejected Alternatives
Some rejected alternatives are:
...