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

Andrew Wang commented on HDFS-5582:
-----------------------------------

Thanks satish. I tested this locally manually, and it seems to work. I just 
have some nitty requests:

* Please use follow the code style conventions for the new tests, i.e. two 
space tabs, no trailing whitespace, single space between "Exception{", 80 
character max line width. I use this eclipse formatter to do it for me: 
https://github.com/cloudera/blog-eclipse/blob/master/hadoop-format.xml
* This is optional, but do you mind fixing up the spacing for the help text 
while we're modifying GetConf? It's ragged right now:

{noformat}
-> % hdfs getconf                      
13/12/30 11:32:00 WARN util.NativeCodeLoader: Unable to load native-hadoop 
library for your platform... using builtin-java classes where applicable
hdfs getconf is utility for getting configuration information from the config 
file.

hadoop getconf 
        [-namenodes]                    gets list of namenodes in the cluster.
        [-secondaryNameNodes]                   gets list of secondary 
namenodes in the cluster.
        [-backupNodes]                  gets list of backup nodes in the 
cluster.
        [-includeFile]                  gets the include file path that defines 
the datanodes that can join the cluster.
        [-excludeFile]                  gets the exclude file path that defines 
the datanodes that need to decommissioned.
        [-nnRpcAddresses]                       gets the namenode rpc addresses
        [-confKey [key]]                        gets a specific key from the 
configuration
{noformat}

> hdfs getconf -excludeFile or -includeFile always failed
> -------------------------------------------------------
>
>                 Key: HDFS-5582
>                 URL: https://issues.apache.org/jira/browse/HDFS-5582
>             Project: Hadoop HDFS
>          Issue Type: Bug
>    Affects Versions: 2.1.0-beta, 2.2.0, 2.3.0
>            Reporter: Henry Hung
>            Assignee: sathish
>            Priority: Minor
>             Fix For: 2.3.0
>
>         Attachments: 00001-HDFS-5582.patch, 0002-HDFS-5582.patch
>
>
> In hadoop-2.2.0, if you execute getconf for exclude and include file, it will 
> return this error message:
> {code}
> [hadoop@fphd1 hadoop-2.2.0]$ bin/hdfs getconf -excludeFile
> Configuration DFSConfigKeys.DFS_HOSTS_EXCLUDE is missing.
> [hadoop@fphd1 hadoop-2.2.0]$ bin/hdfs getconf -includeFile
> Configuration DFSConfigKeys.DFS_HOSTS is missing.
> {code}
> I found out the root cause is very simple, it’s because the source code of 
> {{org/apache/hadoop/hdfs/tools/GetConf.java}} hard coded it to 
> {{"DFSConfigKeys.DFS_HOSTS"}} and {{"DFSConfigKeys.DFS_HOSTS_EXCLUDE"}}
> {code}
>       map.put(INCLUDE_FILE.getName().toLowerCase(), 
>           new CommandHandler("DFSConfigKeys.DFS_HOSTS"));
>       map.put(EXCLUDE_FILE.getName().toLowerCase(),
>           new CommandHandler("DFSConfigKeys.DFS_HOSTS_EXCLUDE"));
> {code}
> A simple fix would be to remove the quote:
> {code}
>       map.put(INCLUDE_FILE.getName().toLowerCase(), 
>           new CommandHandler(DFSConfigKeys.DFS_HOSTS));
>       map.put(EXCLUDE_FILE.getName().toLowerCase(),
>           new CommandHandler(DFSConfigKeys.DFS_HOSTS_EXCLUDE));
> {code}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to