ConfX created HDFS-17449:
----------------------------

             Summary: Ill-formed decommission host name and port pair would 
trigger IndexOutOfBound error
                 Key: HDFS-17449
                 URL: https://issues.apache.org/jira/browse/HDFS-17449
             Project: Hadoop HDFS
          Issue Type: Bug
            Reporter: ConfX


h2. What happened:

Got IndexOutOfBound when trying to run 
org.apache.hadoop.hdfs.server.namenode.TestDecommissioningStatusWithBackoffMonitor#testDecommissionStatusAfterDNRestart
 with namenode host provider set to 
org.apache.hadoop.hdfs.server.blockmanagement.CombinedHostFileManager.
h2. Buggy code:

In HostsFileWriter.java:
{code:java}
String[] hostAndPort = hostNameAndPort.split(":"); // hostNameAndPort might be 
invalid
dn.setHostName(hostAndPort[0]);
dn.setPort(Integer.parseInt(hostAndPort[1])); // here IndexOutOfBound might be 
thrown
dn.setAdminState(AdminStates.DECOMMISSIONED);{code}
h2. StackTrace:
{code:java}
java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
    at 
org.apache.hadoop.hdfs.util.HostsFileWriter.initOutOfServiceHosts(HostsFileWriter.java:110){code}
h2. How to reproduce:

(1) Set {{dfs.namenode.hosts.provider.classname}} to 
{{org.apache.hadoop.hdfs.server.blockmanagement.CombinedHostFileManager}}
(2) Run test: 
{{org.apache.hadoop.hdfs.server.namenode.TestDecommissioningStatusWithBackoffMonitor#testDecommissionStatusAfterDNRestart}}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org

Reply via email to