[ https://issues.apache.org/jira/browse/HDFS-6092?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13931930#comment-13931930 ]
Ted Yu commented on HDFS-6092: ------------------------------ How about patch v3 ? I try to be a little generic by detecting (port) number in the service name. > DistributedFileSystem#getCanonicalServiceName() and > DistributedFileSystem#getUri() may return inconsistent results w.r.t. port > ------------------------------------------------------------------------------------------------------------------------------ > > Key: HDFS-6092 > URL: https://issues.apache.org/jira/browse/HDFS-6092 > Project: Hadoop HDFS > Issue Type: Bug > Affects Versions: 2.3.0 > Reporter: Ted Yu > Attachments: haosdent-HDFS-6092-v2.patch, haosdent-HDFS-6092.patch, > hdfs-6092-v1.txt, hdfs-6092-v2.txt, hdfs-6092-v3.txt > > > I discovered this when working on HBASE-10717 > Here is sample code to reproduce the problem: > {code} > Path desPath = new Path("hdfs://127.0.0.1/"); > FileSystem desFs = desPath.getFileSystem(conf); > > String s = desFs.getCanonicalServiceName(); > URI uri = desFs.getUri(); > {code} > Canonical name string contains the default port - 8020 > But uri doesn't contain port. > This would result in the following exception: > {code} > testIsSameHdfs(org.apache.hadoop.hbase.util.TestFSHDFSUtils) Time elapsed: > 0.001 sec <<< ERROR! > java.lang.IllegalArgumentException: port out of range:-1 > at java.net.InetSocketAddress.checkPort(InetSocketAddress.java:143) > at java.net.InetSocketAddress.<init>(InetSocketAddress.java:224) > at > org.apache.hadoop.hbase.util.FSHDFSUtils.getNNAddresses(FSHDFSUtils.java:88) > {code} > Thanks to Brando Li who helped debug this. -- This message was sent by Atlassian JIRA (v6.2#6252)