You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Greg Harris (Jira)" <ji...@apache.org> on 2023/08/10 21:26:00 UTC
[jira] [Resolved] (KAFKA-15239) producerPerformance system test for old client failed after v3.5.0
[ https://issues.apache.org/jira/browse/KAFKA-15239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Greg Harris resolved KAFKA-15239.
---------------------------------
Fix Version/s: 3.6.0
Reviewer: Greg Harris
Resolution: Fixed
> producerPerformance system test for old client failed after v3.5.0
> ------------------------------------------------------------------
>
> Key: KAFKA-15239
> URL: https://issues.apache.org/jira/browse/KAFKA-15239
> Project: Kafka
> Issue Type: Test
> Components: system tests
> Affects Versions: 3.6.0
> Reporter: Luke Chen
> Assignee: Federico Valeri
> Priority: Major
> Fix For: 3.6.0
>
>
> While running producer performance tool in system test for old client (ex: quota_test), we will try to run with the dev-branch's jar file, to make sure it is backward compatible, as described [here|https://github.com/apache/kafka/blob/trunk/tests/kafkatest/services/performance/producer_performance.py#L86-L88],.
> {code:java}
> # In order to ensure more consistent configuration between versions, always use the ProducerPerformance tool from the development branch {code}
>
> But in KAFKA-14525, we're moving tools from core module to a separate tool module, we're actually breaking the backward compatibility. We should fix the system test. Also maybe we should also mention anywhere about this backward compatibility issue?
> Note:
> This is the command run in system test. Suppose it's testing old client 3.4.0 (file put under `~/Downloads/kafka_2.13-3.4.0` in my env), and running under the latest trunk env.
> {code:java}
> > for file in ./tools/build/libs/kafka-tools*.jar; do CLASSPATH=$CLASSPATH:$file; done; for file in ./tools/build/dependant-libs*/*.jar; do CLASSPATH=$CLASSPATH:$file; done; export CLASSPATH; export KAFKA_LOG4J_OPTS="-Dlog4j.configuration=file:config/tools-log4j.properties"; KAFKA_OPTS= KAFKA_HEAP_OPTS="-XX:+HeapDumpOnOutOfMemoryError" ~/Downloads/kafka_2.13-3.4.0/bin/kafka-run-class.sh org.apache.kafka.tools.ProducerPerformance --topic test_topic --num-records 50000 --record-size 3000 --throughput -1 --producer-props bootstrap.servers=localhost:9092 client.id=overridden_id
> Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/kafka/common/utils/ThroughputThrottler
> at org.apache.kafka.tools.ProducerPerformance.start(ProducerPerformance.java:101)
> at org.apache.kafka.tools.ProducerPerformance.main(ProducerPerformance.java:52)
> Caused by: java.lang.ClassNotFoundException: org.apache.kafka.common.utils.ThroughputThrottler
> at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
> at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
> at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
> ... 2 more
> {code}
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)