[ https://issues.apache.org/jira/browse/HADOOP-18548?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17706060#comment-17706060 ]
ASF GitHub Bot commented on HADOOP-18548: ----------------------------------------- Galsza commented on code in PR #5355: URL: https://github.com/apache/hadoop/pull/5355#discussion_r1150798198 ########## hadoop-tools/hadoop-archives/src/main/java/org/apache/hadoop/tools/HadoopArchives.java: ########## @@ -487,6 +489,11 @@ void archive(Path parentPath, List<Path> srcPaths, + " should be a directory but is a file"); } conf.set(DST_DIR_LABEL, outputPath.toString()); + Credentials credentials = new Credentials(); + Path[] allPaths = new Path[] {parentPath, dest}; + TokenCache.obtainTokensForNamenodes(credentials, allPaths, conf); + conf.setCredentials(credentials); Review Comment: Thanks for the review, I have updated it. > Hadoop Archive tool (HAR) should acquire delegation tokens from source and > destination file systems > --------------------------------------------------------------------------------------------------- > > Key: HADOOP-18548 > URL: https://issues.apache.org/jira/browse/HADOOP-18548 > Project: Hadoop Common > Issue Type: Bug > Components: tools > Reporter: Wei-Chiu Chuang > Assignee: Szabolcs Gál > Priority: Major > Labels: pull-request-available > > Running Hadoop Archive tool (HAR) against source/dest that are not HDFS does > not work today. > Example: > {noformat} > hadoop archive -archiveName foo.har -p ofs://ozone1/vol2/bucket2/src/ > ofs://ozone1/vol2/bucket2/dst/ > {noformat} > The command fails because it's essentially a MapReduce job and for some > reason it does not obtain Ozone delegation token (only HDFS and KMS) > The failure: > {noformat} > 22/11/30 18:12:10 INFO mapreduce.Job: Job job_1669745757520_0001 failed with > state FAILED due to: Job setup failed : java.io.IOException: > org.apache.hadoop.security.AccessControlException: Client cannot authenticate > via:[TOKEN, KERBEROS] > at org.apache.hadoop.ipc.Client$Connection$1.run(Client.java:789) > at java.security.AccessController.doPrivileged(Native Method) > ... > {noformat} > The workaround is to add the ozone path as the default file system: > {noformat} > export HADOOP_OPTS="$HADOOP_OPTS -Dfs.defaultFS=ofs://ozone1/vol2/bucket2" > {noformat} > A proper fix should make sure HAR requests delegation tokens from src/dest > file system too. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org