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 2024/03/22 20:55:00 UTC

[jira] [Created] (KAFKA-16410) kafka-leader-election / LeaderElectionCommand doesn't set exit code on error

Greg Harris created KAFKA-16410:
-----------------------------------

             Summary: kafka-leader-election / LeaderElectionCommand doesn't set exit code on error
                 Key: KAFKA-16410
                 URL: https://issues.apache.org/jira/browse/KAFKA-16410
             Project: Kafka
          Issue Type: Bug
          Components: tools
    Affects Versions: 3.7.0
            Reporter: Greg Harris
             Fix For: 3.7.1


The kafka-leader-election command does not set the process exit code to nonzero when an unexpected error occurs.
{noformat}
% bin/kafka-leader-election.sh --path-to-json-file /tmp/does-not-exist     
Missing required option(s): bootstrap-server, election-type
org.apache.kafka.server.common.AdminCommandFailedException: Missing required option(s): bootstrap-server, election-type
        at org.apache.kafka.tools.LeaderElectionCommand$LeaderElectionCommandOptions.validate(LeaderElectionCommand.java:332)
        at org.apache.kafka.tools.LeaderElectionCommand.run(LeaderElectionCommand.java:78)
        at org.apache.kafka.tools.LeaderElectionCommand.main(LeaderElectionCommand.java:66)
% echo "$?"
0
{noformat}
The exit code is sometimes set properly when other code paths cause the command to exit, or in versions < 3.7:
{noformat}
% bin/kafka-leader-election.sh
This tool attempts to elect a new leader for a set of topic partitions. The type of elections supported are preferred replicas and unclean replicas.
Option                                  Description                           
------                                  -----------                       
...
% echo "$?"
1
{noformat}
This appears to be a regression in 3.7.0, and since a shell script may be relying on the return code from this command, this is something we should fix in the next release.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)