[GitHub] [kafka] rondagostino commented on a change in pull request #10292: MINOR: fix client_compatibility_features_test.py

2021-03-17 Thread GitBox


rondagostino commented on a change in pull request #10292:
URL: https://github.com/apache/kafka/pull/10292#discussion_r596082828



##
File path: tests/kafkatest/tests/client/client_compatibility_features_test.py
##
@@ -79,14 +79,16 @@ def __init__(self, test_context):
 "replication-factor": 3
 }}
 self.kafka = KafkaService(test_context, num_nodes=3, zk=self.zk, 
topics=self.topics)
+# 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])
 
 def invoke_compatibility_program(self, features):
-# Run the compatibility test on the first Kafka node.

Review comment:
   nit: no need to remove this comment.  Otherwise LGTM -- thank you again!





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




[GitHub] [kafka] rondagostino commented on a change in pull request #10292: MINOR: fix client_compatibility_features_test.py

2021-03-16 Thread GitBox


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




[GitHub] [kafka] rondagostino commented on a change in pull request #10292: MINOR: fix client_compatibility_features_test.py

2021-03-11 Thread GitBox


rondagostino commented on a change in pull request #10292:
URL: https://github.com/apache/kafka/pull/10292#discussion_r592639264



##
File path: tests/kafkatest/tests/client/client_compatibility_features_test.py
##
@@ -130,4 +134,7 @@ def run_compatibility_test(self, broker_version, 
metadata_quorum=quorum.zk):
 self.kafka.set_version(KafkaVersion(broker_version))
 self.kafka.start()
 features = get_broker_features(broker_version)
+if not self.zk:
+# this is supported by zkBroker currently
+features["describe-acls-supported"] = False

Review comment:
   Nice -- better than disabling the test for Raft-based quorums.  Perhaps 
add to the comment to indicate that this check/disabling is only necessary due 
to the fact that we are in early access mode with KIP-500 and we should remove 
the special casing when that his fully implemented?  Aside from that, LGTM -- 
thank you for the PR!





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