[ https://issues.apache.org/jira/browse/HDFS-4669?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tian Hong Wang updated HDFS-4669: --------------------------------- Attachment: HADOOP-4669.patch > org.apache.hadoop.hdfs.server.datanode.TestBlockPoolManager fails using IBM > java > -------------------------------------------------------------------------------- > > Key: HDFS-4669 > URL: https://issues.apache.org/jira/browse/HDFS-4669 > Project: Hadoop HDFS > Issue Type: Bug > Components: test > Affects Versions: 2.0.3-alpha > Reporter: Tian Hong Wang > Labels: patch > Fix For: 2.0.3-alpha > > Attachments: HADOOP-4669.patch > > > TestBlockPoolManager unit test fails with the following error message using > IBM java: > testFederationRefresh(org.apache.hadoop.hdfs.server.datanode.TestBlockPoolManager) > Time elapsed: 27 sec <<< FAILURE! > org.junit.ComparisonFailure: expected:<stop #[1 > refresh #2] > > but was:<stop #[2 > refresh #1] > > > The root cause is: > (1)if we want to remove the first NS, keep the second NS, it should be > conf.set(DFSConfigKeys.DFS_NAMESERVICES, ns2), not > conf.set(DFSConfigKeys.DFS_NAMESERVICES, ns1). > (2)Since HashMap & HashSet store the data in the random order way, so in ibm > java & Oracle java, HashMap get the random order <key, value> that causing > the random ns1&ns2 value. So in the code, it should use LinkedHashMap & > LinkedHashSet to keep the original order. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira