[ 
https://issues.apache.org/jira/browse/HDFS-891?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Robert Joseph Evans updated HDFS-891:
-------------------------------------

    Target Version/s: 2.0.0, 3.0.0  (was: 0.23.1, 0.24.0)
    
> DataNode.instantiateDataNode calls system.exit(-1) if 
> conf.get("dfs.network.script") != null
> --------------------------------------------------------------------------------------------
>
>                 Key: HDFS-891
>                 URL: https://issues.apache.org/jira/browse/HDFS-891
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: data-node
>    Affects Versions: 0.22.0
>            Reporter: Steve Loughran
>            Priority: Minor
>         Attachments: HDFS-891.patch
>
>
> Looking at the code for {{DataNode.instantiateDataNode())} , I see that it 
> calls {{system.exit(-1)}} if it is not happy with the configuration
> {code}
>     if (conf.get("dfs.network.script") != null) {
>       LOG.error("This configuration for rack identification is not supported" 
> +
>           " anymore. RackID resolution is handled by the NameNode.");
>       System.exit(-1);
>     }
> {code}
> This is excessive. It should throw an exception and let whoever called the 
> method decide how to handle it. The {{DataNode.main()}} method will log the 
> exception and exit with a -1 value, but other callers (such as anything using 
> {{MiniDFSCluster}} will now see a meaningful message rather than some Junit 
> "tests exited without completing" warning. 
> Easy to write a test for the correct behaviour: start a {{MiniDFSCluster}} 
> with this configuration set, see what happens.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to