[ 
https://issues.apache.org/jira/browse/HDFS-890?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12798759#action_12798759
 ] 

Philip Zeyliger commented on HDFS-890:
--------------------------------------

Do you need to mark the old API as deprecated?  Isn't the "documented" way of 
starting datanodes "bin/hdfs datanode"?  If we can get away with it, fewer 
deprecated methods are better.

I'm +1 having real exit codes.

> Have a way of creating datanodes that throws an meaningful exception on 
> failure
> -------------------------------------------------------------------------------
>
>                 Key: HDFS-890
>                 URL: https://issues.apache.org/jira/browse/HDFS-890
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: data-node
>    Affects Versions: 0.22.0
>            Reporter: Steve Loughran
>            Assignee: Steve Loughran
>
> In HDFS-884, I proposed printing out more details on why things fail. This is 
> hard to test, because you need to subvert the log4j back end that your test 
> harness will itself have grabbed.
> There is a way to make it testable, and to make it easier for anyone creating 
> datanodes in process to recognise and handle failure: have a static 
> CreateDatanode() method that throws exceptions when directories cannot be 
> created or other problems arise. Right now some problems trigger failure, 
> others just return a null reference saying "something went wrong but we won't 
> tell you what -hope you know where the logs go". 
> The HDFS-884 patch would be replaced by something that threw an exception; 
> the existing methods would catch this, log it and return null. The new method 
> would pass it straight up. 
> This is easier to test, better for others. If people think this is good, I 
> will code it up and mark the old API as deprecated. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to