[ https://issues.apache.org/jira/browse/HADOOP-9150?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13555597#comment-13555597 ]
Todd Lipcon commented on HADOOP-9150: ------------------------------------- Hey Daryn. I'm looking at implementing your #1 option above. Another issue, though, is that checkPath() hard-codes {{NetUtils.getCanonicalUri}}. I don't really want to have to make all of HDFS,HFTP,HSFTP,WebHDFS re-implement that code. How does the following sound? - Add {{protected FileSystem.canonicalizeUri(uri)}}. Default implementation would add getDefaultPort() if the given URI has no port set, and if getDefaultPort() > 0 - Make the default implementation of {{FileSystem.getCanonicalUri()}} call {{canonicalizeUri(getUri())}} - Change {{checkPath}} to call {{canonicalizeUri}} - In all of the FileSystems which use real hostnames as their authority, override {{canoncalizeUri}} to call {{NetUtils.canonicalizeUri}} > Unnecessary DNS resolution attempts for logical URIs > ---------------------------------------------------- > > Key: HADOOP-9150 > URL: https://issues.apache.org/jira/browse/HADOOP-9150 > Project: Hadoop Common > Issue Type: Bug > Components: fs/s3, ha, performance, viewfs > Affects Versions: 3.0.0, 2.0.2-alpha > Reporter: Todd Lipcon > Assignee: Todd Lipcon > Priority: Critical > Attachments: hadoop-9150.txt, hadoop-9150.txt, hadoop-9150.txt, > hadoop-9150.txt, log.txt, tracing-resolver.tgz > > > In the FileSystem code, we accidentally try to DNS-resolve the logical name > before it is converted to an actual domain name. In some DNS setups, this can > cause a big slowdown - eg in one misconfigured cluster we saw a 2-3x drop in > terasort throughput, since every task wasted a lot of time waiting for slow > "not found" responses from DNS. -- 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