[
https://issues.apache.org/jira/browse/HDFS-4451?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13566562#comment-13566562
]
Joshua Blatt commented on HDFS-4451:
------------------------------------
Happy to change the patch to follow either suggestion 1 or 2.
On 3, happy to do that as well. I just felt that the one node test was
sufficient to test the exit code, the two node test is exercised elsewhere, so
running the two node test a second time to check the exit code would mostly
just increase test run time.
Anyhoo, nothing worth arguing about. I'll attach a new patch that follows the
suggestions from 2 and 3 shortly.
> 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
> Attachments: HDFS-4451.patch
>
>
> 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