kevin-wu24 commented on PR #17669:
URL: https://github.com/apache/kafka/pull/17669#issuecomment-2566771514

   > @kevin-wu24:
   > 
   > > For `client_compatibility_features_test` and 
`client_compatibility_produce_consume_test` parametrization versions 3.3 - 3.9, 
can we convert them to using `quorum.isolated_kraft` instead of `quorum.zk`?
   > 
   > When I include that change...
   > 
   > ```diff
   > diff --git 
a/tests/kafkatest/tests/client/client_compatibility_features_test.py 
b/tests/kafkatest/tests/client/client_compatibility_features_test.py
   > index 1e0c37825d123..92f3689f2f6a2 100644
   > --- a/tests/kafkatest/tests/client/client_compatibility_features_test.py
   > +++ b/tests/kafkatest/tests/client/client_compatibility_features_test.py
   > @@ -118,13 +118,13 @@ def invoke_compatibility_program(self, features):
   >      @parametrize(broker_version=str(LATEST_3_0))
   >      @parametrize(broker_version=str(LATEST_3_1))
   >      @parametrize(broker_version=str(LATEST_3_2))
   > -    @parametrize(broker_version=str(LATEST_3_3))
   > -    @parametrize(broker_version=str(LATEST_3_4))
   > -    @parametrize(broker_version=str(LATEST_3_5))
   > -    @parametrize(broker_version=str(LATEST_3_6))
   > -    @parametrize(broker_version=str(LATEST_3_7))
   > -    @parametrize(broker_version=str(LATEST_3_8))
   > -    @parametrize(broker_version=str(LATEST_3_9))
   > +    @parametrize(broker_version=str(LATEST_3_3), 
metadata_quorum=quorum.isolated_kraft)
   > +    @parametrize(broker_version=str(LATEST_3_4), 
metadata_quorum=quorum.isolated_kraft)
   > +    @parametrize(broker_version=str(LATEST_3_5), 
metadata_quorum=quorum.isolated_kraft)
   > +    @parametrize(broker_version=str(LATEST_3_6), 
metadata_quorum=quorum.isolated_kraft)
   > +    @parametrize(broker_version=str(LATEST_3_7), 
metadata_quorum=quorum.isolated_kraft)
   > +    @parametrize(broker_version=str(LATEST_3_8), 
metadata_quorum=quorum.isolated_kraft)
   > +    @parametrize(broker_version=str(LATEST_3_9), 
metadata_quorum=quorum.isolated_kraft)
   >      def run_compatibility_test(self, broker_version, 
metadata_quorum=quorum.zk):
   >          if self.zk:
   >              self.zk.start()
   > ```
   > 
   > ...it produces test failures in `run_compatibility_test` for versions 3.3 
through 3.9. I'm going go revert the change for now and test again. If it 
passes without the above change, we should probably file a new Jira to track 
that separately.
   > 
   > Thanks!
   
   @kirktrue, these failures are because the versions of the brokers and 
controllers are not the same after we set the kafka version for the brokers on 
L130. For `isolated_kraft` tests, we also need to set the same version on the 
controllers. Adding the following lines below worked for me when I ran 
`client_compatibility_features_test` and 
`client_compatibility_produce_consume_test` locally:
   ```
   self.kafka.set_version(KafkaVersion(broker_version))
   if metadata_quorum == quorum.isolated_kraft:
       for node in self.kafka.controller_quorum.nodes:
           node.version = KafkaVersion(broker_version)
   ```
   Opened https://github.com/apache/kafka/pull/18367 with the changes. Feel 
free to add them to this PR and I'll close my PR, since I think this should all 
be under the same PR ideally.


-- 
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-unsubscr...@kafka.apache.org

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

Reply via email to