Rajini Sivaram created KAFKA-5837: ------------------------------------- Summary: ReassignPartitionsCommand fails if default throttle/timeout used Key: KAFKA-5837 URL: https://issues.apache.org/jira/browse/KAFKA-5837 Project: Kafka Issue Type: Bug Components: admin Affects Versions: 1.0.0 Reporter: Rajini Sivaram Assignee: Rajini Sivaram Fix For: 1.0.0
System ReassignPartitionsTest.test_reassign_partitions failed with: {quote} Partitions reassignment failed due to java.lang.String cannot be cast to java.lang.Long java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long at scala.runtime.BoxesRunTime.unboxToLong(BoxesRunTime.java:105) at kafka.admin.ReassignPartitionsCommand$.executeAssignment(ReassignPartitionsCommand.scala:188) at kafka.admin.ReassignPartitionsCommand$.main(ReassignPartitionsCommand.scala:61) at kafka.admin.ReassignPartitionsCommand.main(ReassignPartitionsCommand.scala) {quote} This is because default throttle is being set as a String rather than a Long. Default throttle was never being set properly in the command opts, but it didn't matter earlier because code used to set it explicitly: {quote} val throttle = if (opts.options.has(opts.throttleOpt)) opts.options.valueOf(opts.throttleOpt) else -1 {quote} But the commit https://github.com/apache/kafka/commit/adefc8ea076354e07839f0319fee1fba52343b91 started using the default directly (and also added a timeout with default set in the same way). -- This message was sent by Atlassian JIRA (v6.4.14#64029)