rondagostino commented on a change in pull request #10292: URL: https://github.com/apache/kafka/pull/10292#discussion_r595639780
########## File path: tests/kafkatest/tests/client/client_compatibility_features_test.py ########## @@ -81,8 +81,12 @@ def __init__(self, test_context): self.kafka = KafkaService(test_context, num_nodes=3, zk=self.zk, topics=self.topics) def invoke_compatibility_program(self, features): - # Run the compatibility test on the first Kafka node. - node = self.kafka.nodes[0] + if self.zk: + # kafka nodes are set to older version so resolved script path is linked to older assembly. + # run the compatibility test on the first zk node to get script path linked to latest(dev) assembly. + node = self.zk.nodes[0] + else: + node = self.kafka.nodes[0] Review comment: We can use the dev version of the tool on the Kafka node via code like this: ``` node = self.kafka.nodes[0] cmd = ("%s org.apache.kafka.tools.ClientCompatibilityTest " "--bootstrap-server %s " "--num-cluster-nodes %d " "--topic %s " % (self.dev_script_path, self.kafka.bootstrap_servers(), len(self.kafka.nodes), list(self.topics.keys())[0])) ``` And then further down we can define the DEV script path like this: ``` # Always use the latest version of org.apache.kafka.tools.ClientCompatibilityTest # so store away the path to the DEV version before we set the Kafka version self.dev_script_path = self.kafka.path.script("kafka-run-class.sh", self.kafka.nodes[0]) self.kafka.set_version(KafkaVersion(broker_version)) ``` I tested this locally and it solves the problem. ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org