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