Joshua Blatt created HDFS-4451:
----------------------------------

             Summary: hdfs balancer exits 1 on success, it should exit 0
                 Key: HDFS-4451
                 URL: https://issues.apache.org/jira/browse/HDFS-4451
             Project: Hadoop HDFS
          Issue Type: Bug
          Components: balancer
    Affects Versions: 2.0.2-alpha
         Environment: Centos 6.3, JDK 1.6.0_25
            Reporter: Joshua Blatt


Though the org.apache.hadoop.util.Tool interface javadocs indicate  
implementations should return 0 on success, the 
org.apache.hadoop.hdfs.server.balance.Balancer.Cli implementation returns the 
int values of this enum instead:

  // Exit status
  enum ReturnStatus {
    SUCCESS(1),
    IN_PROGRESS(0),
    ALREADY_RUNNING(-1),
    NO_MOVE_BLOCK(-2),
    NO_MOVE_PROGRESS(-3),
    IO_EXCEPTION(-4),
    ILLEGAL_ARGS(-5),
    INTERRUPTED(-6);

This created an issue for us when we tried to run the hdfs balancer as a cron 
job.   Cron sends emails whenever a executable it runs exits non-zero.   We'd 
either have to disable all emails and miss real issues or fix this bug.

I think both SUCCESS and IN_PROGRESS ReturnStatuses should lead to exit 0.

Marking this change as incompatible because existing scripts which interpret 
exit 1 as success will be broken (unless they defensively/liberally interpret 
both exit 1 and exit 0 as success).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to