[ 
https://issues.apache.org/jira/browse/KAFKA-13398?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17433767#comment-17433767
 ] 

Luke Chen commented on KAFKA-13398:
-----------------------------------

[~RivenSun], thanks for reporting the issue. 

So, basically, you initiated some requests via 
ReassignPartitionsCommand/ConsumerGroupCommand to achieve something you can't 
do with adminClient. But if I remember correctly, most the requests inside 
ReassignPartitionsCommand/ConsumerGroupCommand are also using adminClient, 
since we've removed the zookeeper option support. Could you tell us more what 
operations you tried to do via ReassignPartitionsCommand/ConsumerGroupCommand?

 

The xxxCommand is expected to be called via kafka-xxx.sh, and that's why it 
exited directly.

 

> Can I use KafkaAdminClient of version 3.0.0 to initiate 
> *alterPartitionReassignments* and *alterConsumerGroupOffsets* requests for 
> these two methods to brokers of 2.5.0 (or lower versions)?

These 2 methods are implemented in KAFKA-7689 and KAFKA-8345, which are in 
version v2.5.0 and later. So, you're good to use them to initiate requests to 
brokers in V2.5.0.

 

Thank you.

> The caller program will be shut down directly when the execution of Kafka 
> script is abnormal
> --------------------------------------------------------------------------------------------
>
>                 Key: KAFKA-13398
>                 URL: https://issues.apache.org/jira/browse/KAFKA-13398
>             Project: Kafka
>          Issue Type: Improvement
>          Components: admin
>    Affects Versions: 3.0.0
>            Reporter: RivenSun
>            Priority: Major
>
> hello [~showuon] and [~guozhang]
> Kafka has some key functions that have not yet been integrated into 
> Java-AdminClient, so I have to use some Scala classes in the Kafka Server 
> `kafka.admin` package in my java program, such as: 
> `ReassignPartitionsCommand`, `ConsumerGroupCommand` (reset group offsets),  
> and etc., to call their `*main(args: Array[String])*` methods in order to 
> achieve specific functions.
> *Problem*:
> 1. In different Kafka versions, these Scala classes may have different 
> requirements for input parameters, or they may have different treatments for 
> the results of command execution.
>  1) `ReassignPartitionsCommand` requires  --bootstrap-server is required in 
> the latest high version,
> but requires --zookeeper in the low version.
>  Once the parameter verification fails, the *Exit.exit(1, Some(message))* 
> method will be called, which will cause my process to shut down directly.
>  2) In Kafka 3.0.0 version, there is this code at the end in the `*main(args: 
> Array[String])*` method of `ReassignPartitionsCommand`
> {code:java}
> // If the command failed, exit with a non-zero exit code.
>  if (failed) {
>  Exit.exit(1)
>  }{code}
> This will also make my process shut down directly
> So I hope that the Kafka community will be able to print out the reason and 
> stack of the corresponding exception when the parameter verification fails or 
> the execution command is abnormal, and then return from the `*main(args: 
> Array[String])*` method of the command, but don't call `*Exit.exit(...)*` 
> method. Of course, when the script is executed on the machine, there is no 
> problem with exiting directly.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to