Apurva Mehta created KAFKA-6053: ----------------------------------- Summary: NoSuchMethodError when creating ProducerRecord in upgrade system tests Key: KAFKA-6053 URL: https://issues.apache.org/jira/browse/KAFKA-6053 Project: Kafka Issue Type: Bug Reporter: Apurva Mehta Assignee: Apurva Mehta
This patch https://github.com/apache/kafka/pull/4029 used a new constructor for {{ProducerRecord}} which doesn't exist in older clients. Hence system tests which use older clients fail with: {noformat} Exception in thread "main" java.lang.NoSuchMethodError: org.apache.kafka.clients.producer.ProducerRecord.<init>(Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/Long;Ljava/lang/Object;Ljava/lang/Object;)V at org.apache.kafka.tools.VerifiableProducer.send(VerifiableProducer.java:232) at org.apache.kafka.tools.VerifiableProducer.run(VerifiableProducer.java:462) at org.apache.kafka.tools.VerifiableProducer.main(VerifiableProducer.java:500) {"timestamp":1507711495458,"name":"shutdown_complete"} {"timestamp":1507711495459,"name":"tool_data","sent":0,"acked":0,"target_throughput":10000,"avg_throughput":0.0} amehta-macbook-pro:worker6 apurva$ {noformat} A trivial fix is to only use the new constructor if a message create time is explicitly passed to the VerifiableProducer, since older versions of the test would never use it. -- This message was sent by Atlassian JIRA (v6.4.14#64029)