[
https://issues.apache.org/jira/browse/HDFS-6731?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Brandon Li moved HADOOP-9603 to HDFS-6731:
------------------------------------------
Component/s: (was: auto-failover)
(was: fs)
ha
auto-failover
Affects Version/s: (was: 2.4.0)
(was: 2.0.4-alpha)
2.0.4-alpha
2.4.0
Key: HDFS-6731 (was: HADOOP-9603)
Project: Hadoop HDFS (was: Hadoop Common)
> Run "hdfs zkfc-formatZK" on a server in a non-namenode will cause a null
> pointer exception.
> --------------------------------------------------------------------------------------------
>
> Key: HDFS-6731
> URL: https://issues.apache.org/jira/browse/HDFS-6731
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: auto-failover, ha
> Affects Versions: 2.4.0, 2.0.4-alpha
> Reporter: WenJin Ma
> Assignee: Masatake Iwasaki
> Attachments: HADOOP-9603-0.patch
>
> Original Estimate: 168h
> Remaining Estimate: 168h
>
> Run "hdfs zkfc-formatZK" on a server in a non-namenode will cause a null
> pointer exception.
> {code}
> [hadoop@test bin]$ ./hdfs zkfc -formatZK
> Exception in thread "main" java.lang.NullPointerException
> at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:187)
> at
> org.apache.hadoop.hdfs.tools.NNHAServiceTarget.<init>(NNHAServiceTarget.java:57)
> at
> org.apache.hadoop.hdfs.tools.DFSZKFailoverController.create(DFSZKFailoverController.java:128)
> at
> org.apache.hadoop.hdfs.tools.DFSZKFailoverController.main(DFSZKFailoverController.java:172)
> {code}
> I look at the code, found in the org.apache.hadoop.hdfs.DFSUtil.getSuffixIDs
> () method does not make judgments on this issue.
> {code}
> static String[] getSuffixIDs(final Configuration conf, final String
> addressKey,
> String knownNsId, String knownNNId,
> final AddressMatcher matcher) {
> String nameserviceId = null;
> String namenodeId = null;
> int found = 0;
> //......do something
> if (found > 1) { // Only one address must match the local address
> String msg = "Configuration has multiple addresses that match "
> + "local node's address. Please configure the system with "
> + DFS_NAMESERVICE_ID + " and "
> + DFS_HA_NAMENODE_ID_KEY;
> throw new HadoopIllegalArgumentException(msg);
> }
> // If the IP is not a local address, found to be less than 1.
> // There should be throw an exception with clear message rather than
> cause a null pointer exception.
> return new String[] { nameserviceId, namenodeId };
> {code}
--
This message was sent by Atlassian JIRA
(v6.2#6252)