-
Notifications
You must be signed in to change notification settings - Fork 14.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MINOR: Move the ELR default version to 4.1 #18954
Conversation
@@ -130,7 +130,7 @@ public enum MetadataVersion { | |||
// Please move this comment when updating the LATEST_PRODUCTION constant. | |||
// | |||
|
|||
// Not used by anything yet. | |||
// The default version to enable ELR (KIP-966). | |||
IBP_4_1_IV0(26, "4.1", "IV0", false); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The ELR related comments for IBP_4_0_IV1 are a bit unclear - can we clarify them?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mentioned 4.0IV1 adds the support for ELR and ELR is only for preview
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the comment should be something like "enables ELR by default for new clusters"
@@ -25,7 +25,7 @@ public enum EligibleLeaderReplicasVersion implements FeatureVersion { | |||
ELRV_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()), | |||
|
|||
// Version 1 enables the ELR (KIP-966). | |||
ELRV_1(1, MetadataVersion.IBP_4_0_IV1, Collections.emptyMap()); | |||
ELRV_1(1, MetadataVersion.IBP_4_1_IV0, Collections.emptyMap()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think that this will work since it will disable ELR completely for 4.0-IV1.
In any case, we need a test of ELR working with 4.0-IV1.
@@ -25,7 +25,7 @@ public enum EligibleLeaderReplicasVersion implements FeatureVersion { | |||
ELRV_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()), | |||
|
|||
// Version 1 enables the ELR (KIP-966). | |||
ELRV_1(1, MetadataVersion.IBP_4_0_IV1, Collections.emptyMap()); | |||
ELRV_1(1, MetadataVersion.IBP_4_1_IV0, Collections.emptyMap()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to define the dependency on IBP_4_0_IV1?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, I will let @cmccabe do the final review and merge it.
@CalvinConfluent please add a test case to FormatterTest of someone turning on ELR for formatting when MV = 4.0-IV1. Also add a test case that fails with ELR = 1 and MV = 3.9-IV0 (or other earlier MV) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm, thanks.
This test (Java 23) failed but it passes locally. Looking at the history, it became flaky since a few days ago. Hence it is not related to this patch. Filed https://issues.apache.org/jira/browse/KAFKA-18844. |
- ELR is enabled (ELRV_1) by default if the cluster is created with its bootstrap metadata version >= IBP_4_1_IV0. - ELRV_1 can be manually enabled iff the metadata version is >= IBP_4_0_IV1. Reviewers: Ismael Juma <[email protected]>, Colin P. McCabe <[email protected]>, David Jacot <[email protected]>
Merged to trunk and to 4.0. |
Interesting, the flaky test looks related to #18845, I added a comment to the JIRA ticket too. |
ELR is enabled (ELRV_1) by default if the cluster is created with its bootstrap metadata version >= IBP_4_1_IV0.
ELRV_1 can be manually enabled iff the metadata version is >= IBP_4_0_IV1.