[ 
https://issues.apache.org/jira/browse/HADOOP-13593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15483433#comment-15483433
 ] 

Yuanbo Liu edited comment on HADOOP-13593 at 9/12/16 9:39 AM:
--------------------------------------------------------------

I find that in {{FileUtil#compareFs}}, it uses 
"InetAddress.getByName(srcHost).getCanonicalHostName()" to get the host name of 
Swift file system. In fact "testhadoop.softlayer" is an alias name of Swift, 
it's impossible to use "getCanonicalHostName" to get the real host name. I 
propose to delete it and upload v1 patch for this issue.

See the full stack info here:
{code}
16/09/08 20:59:36 WARN security.UserGroupInformation: Exception encountered 
while running the renewal command. Aborting renew thread. ExitCodeException 
exitCode=1: kinit: Ticket expired while renewing credentials

16/09/08 20:59:37 INFO tools.DistCp: Input Options: 
DistCpOptions{atomicCommit=true, syncFolder=false, deleteMissing=false, 
ignoreFailures=false, maxMaps=20, sslConfigurationFile='null', 
copyStrategy='uniformsize', sourceFileListing=null, sourcePaths=[/tmp/100M], 
targetPath=swift://testhadoop.softlayer/tmp, targetPathExists=true, 
preserveRawXattrs=false}
16/09/08 20:59:38 INFO impl.TimelineClientImpl: Timeline service address: 
https://wangxjrhel672.fyre.ibm.com:8190/ws/v1/timeline/
16/09/08 20:59:39 ERROR tools.DistCp: Exception encountered
java.lang.IllegalArgumentException: Work path 
swift://testhadoop.softlayer/._WIP_tmp1072690165 and target path 
swift://testhadoop.softlayer/tmp are in different file system
        at org.apache.hadoop.tools.DistCp.configureOutputFormat(DistCp.java:351)
        at org.apache.hadoop.tools.DistCp.createJob(DistCp.java:237)
        at org.apache.hadoop.tools.DistCp.createAndSubmitJob(DistCp.java:174)
        at org.apache.hadoop.tools.DistCp.execute(DistCp.java:153)
        at org.apache.hadoop.tools.DistCp.run(DistCp.java:126)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
{code}


was (Author: yuanbo):
I find that in {{FileUtil#compareFs}}, it uses 
"InetAddress.getByName(srcHost).getCanonicalHostName()" to get the host name of 
Swift file system. In fact "testhadoop.softlayer" is an alias name of Swift, 
it's impossible to use "getCanonicalHostName" to get the real host name. I 
propose to delete it and upload v1 patch for this issue.

> `hadoop distcp -atomic` invokes improper host check while copying data from 
> HDFS to Swift
> -----------------------------------------------------------------------------------------
>
>                 Key: HADOOP-13593
>                 URL: https://issues.apache.org/jira/browse/HADOOP-13593
>             Project: Hadoop Common
>          Issue Type: Bug
>            Reporter: Yuanbo Liu
>         Attachments: HADOOP-13593.001.patch, HADOOP-13593.002.patch
>
>
> While copying data from HDFS to Swift by using `hadoop distcp -atomic`, for 
> example:
> {code}
> hadoop distcp -atomic /tmp/100M  swift://testhadoop.softlayer//tmp
> {code}
> it throws
> {code}
> java.lang.IllegalArgumentException: Work path 
> swift://testhadoop.softlayer/._WIP_tmp546958075 and target path 
> swift://testhadoop.softlayer/tmp are in different file system
>       at org.apache.hadoop.tools.DistCp.configureOutputFormat(DistCp.java:351)
> .....
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to