[ 
https://issues.apache.org/jira/browse/HIVE-26614?focusedWorklogId=814865&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-814865
 ]

ASF GitHub Bot logged work on HIVE-26614:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 08/Oct/22 03:43
            Start Date: 08/Oct/22 03:43
    Worklog Time Spent: 10m 
      Work Description: ayushtkn opened a new pull request, #3652:
URL: https://github.com/apache/hive/pull/3652

   ### What changes were proposed in this pull request?
   Make the Jar path fully qualified, so as to prevent resolution to 
fs.defaultFs in any application
   
   
   ### Why are the changes needed?
   
   Some applications don't explicitly assume the path to LFS, rather resolve to 
fs.defaultFs
   
   
   ### Does this PR introduce _any_ user-facing change?
   Nopes.
   
   
   ### How was this patch tested?
   Build distribution & tried the same command. Doesn't happen in Tests due to 
https://github.com/apache/hive/blob/9db31108e1a44b2fb0436134fa78eea79418d4ad/iceberg/iceberg-handler/src/main/java/org/apache/iceberg/mr/hive/HiveIcebergStorageHandler.java#L249-L252
   
   May be specific to query engines as well. Tez I suppose alway expects the 
Path to be in LFS




Issue Time Tracking
-------------------

            Worklog Id:     (was: 814865)
    Remaining Estimate: 0h
            Time Spent: 10m

> Fix adding custom jars in Job Classpath
> ---------------------------------------
>
>                 Key: HIVE-26614
>                 URL: https://issues.apache.org/jira/browse/HIVE-26614
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Ayush Saxena
>            Assignee: Ayush Saxena
>            Priority: Major
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Custom added Jars in LocalFs throws FNF:
> {noformat}
> ERROR : Job Submission failed with exception 
> 'java.io.FileNotFoundException(File does not exist: 
> hdfs://localhost:9000/Users/ayushsaxena/code/hive-os/hive/packaging/target/apache-hive-4.0.0-alpha-2-SNAPSHOT-bin/apache-hive-4.0.0-alpha-2-SNAPSHOT-bin/lib/hive-iceberg-handler-4.0.0-alpha-2-SNAPSHOT.jar)'
> java.io.FileNotFoundException: File does not exist: 
> hdfs://localhost:9000/Users/ayushsaxena/code/hive-os/hive/packaging/target/apache-hive-4.0.0-alpha-2-SNAPSHOT-bin/apache-hive-4.0.0-alpha-2-SNAPSHOT-bin/lib/hive-iceberg-handler-4.0.0-alpha-2-SNAPSHOT.jar
>       at 
> org.apache.hadoop.hdfs.DistributedFileSystem$29.doCall(DistributedFileSystem.java:1756)
>       at 
> org.apache.hadoop.hdfs.DistributedFileSystem$29.doCall(DistributedFileSystem.java:1749)
>       at 
> org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
>       at 
> org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1764)
>       at org.apache.hadoop.fs.FileSystem.resolvePath(FileSystem.java:958)
>       at 
> org.apache.hadoop.mapreduce.v2.util.MRApps.addToClasspathIfNotJar(MRApps.java:342)
>       at 
> org.apache.hadoop.mapreduce.v2.util.MRApps.setClasspath(MRApps.java:275)
>       at 
> org.apache.hadoop.mapred.YARNRunner.setupContainerLaunchContextForAM(YARNRunner.java:525)
>       at 
> org.apache.hadoop.mapred.YARNRunner.createApplicationSubmissionContext(YARNRunner.java:584)
>       at org.apache.hadoop.mapred.YARNRunner.submitJob(YARNRunner.java:326)
>       at 
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:251)
>       at org.apache.hadoop.mapreduce.Job$11.run(Job.java:1571)
>       at org.apache.hadoop.mapreduce.Job$11.run(Job.java:1568)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:422)
>       at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1878)
>       at org.apache.hadoop.mapreduce.Job.submit(Job.java:1568)
>       at org.apache.hadoop.mapred.JobClient$1.run(JobClient.java:576)
>       at org.apache.hadoop.mapred.JobClient$1.run(JobClient.java:571)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:422)
>       at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1878)
>       at 
> org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:571)
>       at org.apache.hadoop.mapred.JobClient.submitJob(JobClient.java:562)
>       at 
> org.apache.hadoop.hive.ql.exec.mr.ExecDriver.execute(ExecDriver.java:416)
>       at 
> org.apache.hadoop.hive.ql.exec.mr.MapRedTask.execute(MapRedTask.java:158){noformat}
> Some Applications do consider every Jar Path to be in LocalFileSystem but 
> rest follow the standard Hadoop practice to check the Fs.DefaultFs. We should 
> better make the path qualified



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to