[ https://issues.apache.org/jira/browse/HADOOP-3331?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12645711#action_12645711 ]
Ronen Botzer commented on HADOOP-3331: -------------------------------------- The [current documentation|http://hadoop.apache.org/core/docs/current/hdfs_shell.html#test] (0.18) states the exact opposite from the current behavior: {noformat} Usage: hadoop fs -test -[ezd] URI Options: -e check to see if the file exists. Return 0 if true. {noformat} In fact: {noformat} -bash-3.1$ hadoop fs -ls /user/rbotzer/ Found 1 items -rw-r--r-- 2 rbotzer supergroup 7603 2008-11-06 23:05 /user/rbotzer/testlog -bash-3.1$ # capture the exit status -bash-3.1$ ./ec /user/rbotzer/testlog hadoop fs -test -e /user/rbotzer/testlog int(1) {noformat} > Return code for "hadoop dfs -test" does not match standard return codes from > System.exit > ---------------------------------------------------------------------------------------- > > Key: HADOOP-3331 > URL: https://issues.apache.org/jira/browse/HADOOP-3331 > Project: Hadoop Core > Issue Type: Bug > Components: fs > Environment: All > Reporter: Mike Dillon > Priority: Minor > > The output of "hadoop dfs -test" does the opposite of what normal Unix > commands to (which is also the opposite of the recommended return codes in > the javadocs for System.exit). Normal commands return zero for success and > non-zero for error, but "hadoop dfs -test" does this opposite. This makes > writing shell scripts that use "hadoop dfs -test" clunky and unnatural since > you can't do standard stuff like this: > {noformat} > if hadoop dfs -test -e /missing/file/name; then > # Do something only if the file exists > else > # Do something else if the file is missing > fi > {noformat} > Creating a patch for this would introduce a breaking change and would require > changing the Ant DFS task as well. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.