Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Fixed
-
2.1.0-beta, 2.2.0, 2.3.0
-
None
-
None
Description
In hadoop-2.2.0, if you execute getconf for exclude and include file, it will return this error message:
[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.
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"
map.put(INCLUDE_FILE.getName().toLowerCase(), new CommandHandler("DFSConfigKeys.DFS_HOSTS")); map.put(EXCLUDE_FILE.getName().toLowerCase(), new CommandHandler("DFSConfigKeys.DFS_HOSTS_EXCLUDE"));
A simple fix would be to remove the quote:
map.put(INCLUDE_FILE.getName().toLowerCase(), new CommandHandler(DFSConfigKeys.DFS_HOSTS)); map.put(EXCLUDE_FILE.getName().toLowerCase(), new CommandHandler(DFSConfigKeys.DFS_HOSTS_EXCLUDE));