You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "cmccabe (via GitHub)" <gi...@apache.org> on 2024/08/08 23:07:31 UTC

[PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

cmccabe opened a new pull request, #16841:
URL: https://github.com/apache/kafka/pull/16841

   - Mark 3.9-IV0 as stable. Metadata version 3.9-IV0 should return Fetch version 17.
   
   - Move ELR to 4.0-IV0. Remove 3.9-IV1 since it's no longer needed.
   
   - Create a new 4.0-IV1 MV for KIP-848.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "chia7712 (via GitHub)" <gi...@apache.org>.
chia7712 commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715295437


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   > For example: version 8 (KIP-405) added EARLIEST_LOCAL_TIMESTAMP=-4 flag. the question are:
       Should server return UNSUPPORTED_VERSION if server receive a request with version<8 and timestamp=-4?
       Should admin check the timestamp and throw unsupported version if the server is unsupported to that timestamp flag?
   It seems to me the version check is necessary to make 1) newer server can return suitable error to older client and 2) newer client can generate suitable error itself rather than receive undefined result from older server.
   
   I open https://issues.apache.org/jira/browse/KAFKA-17331 for it. @cmccabe @junrao Sorry that I feel this is a part of KIP-1005. we will complete it ASAP



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715939493


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   Thanks. https://issues.apache.org/jira/browse/KAFKA-17336 should be good to not release with unstable versions that break api usage.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1712234410


##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   LatestTesting doesn't quite work since it is not guaranteed that latestTesting is unstable right?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1712256484


##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   Alternatively, I could write the test to check if the latest MV is stable, and if so, skip the check.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "chia7712 (via GitHub)" <gi...@apache.org>.
chia7712 commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714332167


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   > do you plan to update 
   
   I assumed @cmccabe will update it in this PR :smile: 
   
   Will file a jira and PR for trunk and 3.9 later 
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "chia7712 (via GitHub)" <gi...@apache.org>.
chia7712 commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715067054


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   > Christo's PR seems to have caused some tests to fail because of this (https://github.com/apache/kafka/pull/15673#issuecomment-2104306940). So, I was wondering why the failure didn't show up here.
   
   the CI is gone so I can't see "which test" you discussed. According to https://github.com/apache/kafka/commit/53276b12c57f325fc62e0133eae1eae023c3b74b,  I guess the test case is `testApiVersionsRequestIncludesUnreleasedApis`. It is used to verify the api key and version range. Everything is good but #15761 introduced a "wrong" config to it. However, the test was not failed since we did not have "unstable" version yet.
   
   That is why #15673 changed the `unstable.api.versions.enable` from `false` to `true`, because it added a unstable "version=0" to LIST_OFFSET.
   
   In short, I feel the test case `testApiVersionsRequestIncludesUnreleasedApis` is NOT related to MV. If we want to build the relationship between "unstable version" and "MV". Maybe we can add new field to `ApiKeys` to declare the MV for the RPC having "unstable version". And then we can add tests for following checks
   
   1. the RPC having unstable version must declare a MV in `ApiKeys`. The MV is equal to the release which can change the version from unstable to "stable"
   2. the `MetadataVersion#LATEST_PRODUCTION` must be smaller than MV in `ApiKeys`. That ensures `LATEST_PRODUCTION` will NOT depend on unstable versions.
   
   This idea does NOT impact the production code, but it increase the complexity of updating MV/version.
   
   @junrao WDYT? 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715771597


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   Yes -- sorry I was imprecise. If the api version is advertised by a MV that is stable it sould also be stable.
   
   I didn't realize ListOffset was being used in the replication path.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1711984228


##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   We have a similar test here for real features, so if we think this is sufficient, we can remove the test I linked above. https://github.com/apache/kafka/blame/98cdf9717049e87ba34bb5161276577fcb8bd1c4/server-common/src/test/java/org/apache/kafka/server/common/FeaturesTest.java#L51



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715771597


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   Yes -- sorry I was imprecise. If the api version is advertised by a MV that is stable it sould also be stable.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "chia7712 (via GitHub)" <gi...@apache.org>.
chia7712 commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715842281


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   > However, by default, v9 of ListOffset is not supported with latestVersionUnstable set to true. So, I still don't understand why some existing tests don't fail. We probably need to understand the testing gap. If we have sufficient test coverage, we probably don't need additional protocols.
   
   yes, you are right. we should have a test for replica path. I just write a IT which can produce following error when LIST_OFFSET has unstable version:
   ```
   [2024-08-14 03:27:13,119] ERROR Closing socket for 127.0.0.1:36885-127.0.0.1:48854-3 because of error (kafka.network.Processor:76)
   org.apache.kafka.common.errors.InvalidRequestException: Received request api key LIST_OFFSETS with version 9 which is not enabled
   ```
   Also, it seems we create IT with unstable APIs always [0] and I guess that is why we don't see failed tests.
   
   **Summary**
   1. broker-to-broker: the LIST_OFFSET version is based on MV [1], and we use IT to protect us from updating MV with an unstable version (https://issues.apache.org/jira/browse/KAFKA-17336)
   2. new-client-to-old-broker: the builder of LIST_OFFSET will check the timestamp and its matched version (https://issues.apache.org/jira/browse/KAFKA-17331)
   3. old-client-to-new-broker: the broker will check the timestamp and its matched version (https://issues.apache.org/jira/browse/KAFKA-17331)
   
   
   > I didn't realize ListOffset was being used in the replication path. I guess this is just for tiered storage.
   
   @jolshan not really, the request is used to truncate in the replication path. I have attached a sample code in https://issues.apache.org/jira/browse/KAFKA-17336. we will complete it tomorrow.
   
   [0] https://github.com/apache/kafka/blob/8d29bc1fa8ce75b6807b957ea35ad39e8dd9e04a/core/src/test/scala/unit/kafka/utils/TestUtils.scala#L307
   [1] https://github.com/apache/kafka/blob/8d29bc1fa8ce75b6807b957ea35ad39e8dd9e04a/server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java#L474
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "chia7712 (via GitHub)" <gi...@apache.org>.
chia7712 commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1712531532


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   > Is KIP-1005 done? Could we set latestVersionUnstable to false for ListOffsetRequest in 3.9?
   
   KIP-1005 is completed and backport to 3.9, so yes latestVersionUnstable should be false now.
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "chia7712 (via GitHub)" <gi...@apache.org>.
chia7712 commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714476438


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   > It's a bit surprising that no test failed with a production MV depending on an unstable ListOffset RPC. Do you know why?
   
   I don't think there is the "connection" between MV and unstable ListOffset RPC. The only condition used to enable unstable RPC is to set `unstable.api.versions.enable=true` regardless of MV.
   
   For another, the version supports of ListOffset is a bit weird. We don't add the version check on both client/server side for the "specific" timestamp. 
   
   For example: version 8 (KIP-405) added `EARLIEST_LOCAL_TIMESTAMP=-4` flag. the question are: 
   
   1. Should server return `UNSUPPORTED_VERSION` if server receive a request with `version<8` and `timestamp=-4`?
   2. Should admin check the timestamp and throw unsupported version if the server is unsupported to that timestamp flag?
   
   It seems to me the version check is necessary to make 1) newer server can return suitable error to older client and 2) newer client can generate suitable error itself rather than receive undefined result from older server. 
   
   @junrao WDYT? 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715771597


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   Yes -- sorry I was imprecise. If the api version is advertised by a MV that is stable it sould also be stable.
   
   I didn't realize ListOffset was being used in the replication path. I guess this is just for tiered storage.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "cmccabe (via GitHub)" <gi...@apache.org>.
cmccabe commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714322320


##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   We should probably just document that the last MV should always be unstable. I don't think it's ever been stable since "unstable" was created (we don't seem to stop developing features...)
   
   Should we do this in a follow-on so that we can unblock 3.9?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "cmccabe (via GitHub)" <gi...@apache.org>.
cmccabe commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714315335


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   @junrao : yes, KIP-1005 will ship in AK 3.9.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "chia7712 (via GitHub)" <gi...@apache.org>.
chia7712 commented on PR #16841:
URL: https://github.com/apache/kafka/pull/16841#issuecomment-2284862635

   > Thanks for the explanation. LGTM assuming we will have a followup PR to address https://github.com/apache/kafka/pull/16841#discussion_r1711938781.
   
   will file PR later (https://issues.apache.org/jira/browse/KAFKA-17319)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "junrao (via GitHub)" <gi...@apache.org>.
junrao commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714530905


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   @chia7712 : Thanks for the reply. Previously, Christo's PR seems to have caused some tests to fail because of this (https://github.com/apache/kafka/pull/15673#issuecomment-2104306940). So, I was wondering why the failure didn't show up here.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1711978443


##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   I'm sorry I haven't gotten a chance to update this. I was hoping to have one of the test versions be the latest unstable version, but I believe I updated the tests for them to work either way now. Let me double check. 
   
   If so we can just keep at 3.9.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "junrao (via GitHub)" <gi...@apache.org>.
junrao commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1712251563


##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   Well, the only case when LatestTesting is stable is that there is no unstable MV, right?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1712255386


##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   Right -- in that case this test will fail. https://github.com/apache/kafka/blame/98cdf9717049e87ba34bb5161276577fcb8bd1c4/server-common/src/test/java/org/apache/kafka/server/common/FeaturesTest.java#L137
   
   My understanding is that we don't create a new MV when we mark one as stable, so for example, if all the MVs were marked stable, the test would fail.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "junrao (via GitHub)" <gi...@apache.org>.
junrao commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714338220


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   Thanks, @chia7712. It's a bit surprising that no test failed with a production MV depending on an unstable ListOffset RPC. Do you know why?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "chia7712 (via GitHub)" <gi...@apache.org>.
chia7712 commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714332167


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   > do you plan to update 
   
   I assumed @cmccabe will update it in this PR :smile: 
   
   Will file a jira and PR for it later 
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "junrao (via GitHub)" <gi...@apache.org>.
junrao commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1712233036


##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   Thanks, Justine. Could we just use `MetadataVersion.latestTesting()` to avoid having to keep updating this with new MVs?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "junrao (via GitHub)" <gi...@apache.org>.
junrao commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1711938781


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   Hmm, ListOffsetRequest has latestVersionUnstable set to true. So, it's kind of weird to have a production MV depending on a unstable PRC.
   
   @clolov @showuon @chia7712 : Is KIP-1005 done? Could we set latestVersionUnstable to false for ListOffsetRequest in 3.9?



##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   @jolshan : What MV should TEST_2 depend on? Do we need to keep changing it with new MVs? It would be useful to add a comment to document this.



##########
metadata/src/test/java/org/apache/kafka/controller/PartitionChangeBuilderTest.java:
##########
@@ -389,7 +389,7 @@ public void testNoLeaderEpochBumpOnIsrExpansionDuringMigration(String metadataVe
      * always results in a leader epoch increase.
      */
     @ParameterizedTest
-    @ValueSource(strings = {"3.4-IV0", "3.5-IV2", "3.6-IV0", "3.7-IV2", "3.9-IV1"})
+    @ValueSource(strings = {"3.4-IV0", "3.5-IV2", "3.6-IV0", "3.7-IV2", "4.0-IV0"})

Review Comment:
   I had a followup comment in https://github.com/apache/kafka/pull/16347#discussion_r1661558720. Do we need to add 4.0-IV0 for `testNoLeaderEpochBumpOnEmptyTargetIsr`?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714326818


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   @chia7712 do you plan to update https://github.com/apache/kafka/blob/df04887ba597941674a28d54bd35202bbd21631e/clients/src/main/resources/common/message/ListOffsetsRequest.json#L42



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "showuon (via GitHub)" <gi...@apache.org>.
showuon commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714507070


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   I agree we should add tests for it.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "junrao (via GitHub)" <gi...@apache.org>.
junrao commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715730246


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   >  I don't think we need to tie api versions to MV at this time.
   
   @jolshan : Just to be clear. I think the issue is that some inter broker requests (e.g. replication) depend on MV to set the request version, not based on supported versions returned in ApiVersion. If we have a stable MV depending on an unstable version of an inter-broker RPC, in the default setting (with stable MV and requests), the broker will receive a newer version of the request that it doesn't support.
   
   @chia7712 : For this particular case, `ListOffset` is an inter broker RPC. In the default setting, the replication code will use v9 of `ListOffset`. However, by default, v9 of `ListOffset` is not supported with latestVersionUnstable set to true. So, I still don't understand why some existing tests don't fail. We probably need to understand the testing gap. If we have sufficient test coverage, we probably don't need additional protocols.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1711982094


##########
server-common/src/main/java/org/apache/kafka/server/common/TestFeatureVersion.java:
##########
@@ -23,8 +23,8 @@ public enum TestFeatureVersion implements FeatureVersion {
     TEST_0(0, MetadataVersion.MINIMUM_KRAFT_VERSION, Collections.emptyMap()),
     // TEST_1 released right before MV 3.7-IVO was released, and it has no dependencies
     TEST_1(1, MetadataVersion.IBP_3_7_IV0, Collections.emptyMap()),
-    // TEST_2 released right before MV 3.9-IVO was released, and it depends on this metadata version
-    TEST_2(2, MetadataVersion.IBP_3_9_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_3_9_IV0.featureLevel()));
+    // TEST_2 released right before MV 4.0-IVO was released, and it depends on this metadata version
+    TEST_2(2, MetadataVersion.IBP_4_0_IV0, Collections.singletonMap(MetadataVersion.FEATURE_NAME, MetadataVersion.IBP_4_0_IV0.featureLevel()));

Review Comment:
   Ok. This is the test that will fail if we don't change the version to 4.0. https://github.com/apache/kafka/blame/98cdf9717049e87ba34bb5161276577fcb8bd1c4/server-common/src/test/java/org/apache/kafka/server/common/FeaturesTest.java#L137



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "cmccabe (via GitHub)" <gi...@apache.org>.
cmccabe merged PR #16841:
URL: https://github.com/apache/kafka/pull/16841


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "jolshan (via GitHub)" <gi...@apache.org>.
jolshan commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715593171


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   I don't think MV needs to tie to unstable versions. We used to not have unstable metadata versions in a release, but now we allow it if the MV is for the next release and we have the mechanisms to do this. 
   
   I think generally, the unstable api version in a release is OK, BUT if we say the KIP is completed in the release, the api should be stable (unless we doing using early access etc). I don't think we need to tie api versions to MV at this time.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "junrao (via GitHub)" <gi...@apache.org>.
junrao commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1715948706


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   > Also, it seems we create IT with unstable APIs always [0] and I guess that is why we don't see failed tests.
   
   Thanks for the investigation, @chia7712. Maybe we just need to disable unstable API/MV in a few existing integration tests.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "cmccabe (via GitHub)" <gi...@apache.org>.
cmccabe commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1714319798


##########
metadata/src/test/java/org/apache/kafka/controller/PartitionChangeBuilderTest.java:
##########
@@ -389,7 +389,7 @@ public void testNoLeaderEpochBumpOnIsrExpansionDuringMigration(String metadataVe
      * always results in a leader epoch increase.
      */
     @ParameterizedTest
-    @ValueSource(strings = {"3.4-IV0", "3.5-IV2", "3.6-IV0", "3.7-IV2", "3.9-IV1"})
+    @ValueSource(strings = {"3.4-IV0", "3.5-IV2", "3.6-IV0", "3.7-IV2", "4.0-IV0"})

Review Comment:
   It would not make sense to add 4.0-IV0 to `testNoLeaderEpochBumpOnEmptyTargetIsr`, since in 4.0 an empty target ISR actually WILL trigger a leader epoch bump.
   
   The reason is because once KIP-966 is implemented, empty ISRs will actually be possible, whereas they are not prior to KIP-966



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] KAFKA-17018: update MetadataVersion for the Kafka release 3.9 [kafka]

Posted by "chia7712 (via GitHub)" <gi...@apache.org>.
chia7712 commented on code in PR #16841:
URL: https://github.com/apache/kafka/pull/16841#discussion_r1716011453


##########
server-common/src/main/java/org/apache/kafka/server/common/MetadataVersion.java:
##########
@@ -244,7 +244,7 @@ public enum MetadataVersion {
      * <strong>Think carefully before you update this value. ONCE A METADATA VERSION IS PRODUCTION,
      * IT CANNOT BE CHANGED.</strong>
      */
-    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_8_IV0;
+    public static final MetadataVersion LATEST_PRODUCTION = IBP_3_9_IV0;

Review Comment:
   > Maybe we just need to disable unstable API/MV in a few existing integration tests.
   
   yep, we are looking for the similar tests



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscribe@kafka.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org