[ https://issues.apache.org/jira/browse/CRUNCH-512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14509515#comment-14509515 ]
Ryan Blue commented on CRUNCH-512: ---------------------------------- Yes, all of the jars I'm adding to the distributed cache go through the DistCache methods, and the jars are [located by class|https://github.com/kite-sdk/kite/blob/master/kite-tools-parent/kite-tools/src/main/java/org/kitesdk/tools/TaskUtil.java#L137]. > Distributed cache cannot find jar files when using LocalJobRunner. > ------------------------------------------------------------------ > > Key: CRUNCH-512 > URL: https://issues.apache.org/jira/browse/CRUNCH-512 > Project: Crunch > Issue Type: Bug > Components: Core > Affects Versions: 0.11.0 > Reporter: Ryan Blue > Assignee: Josh Wills > > I have a Crunch-based task that uses the LocalJobRunner when it is copying > data to or from HDFS. When HDFS is the default FS and I'm using > LocalJobRunner, I get a FileNotFoundException in the distributed cache code > with a strange looking URI: > {code} > 1 job failure(s) occurred: > org.kitesdk.tools.CopyTask: > Kite(dataset:file:/tmp/eb3b9643-1be3-400e-96d1-6e095fb3c5... ID=1 (1/1)(1): > java.io.FileNotFoundException: File does not exist: > hdfs://quickstart.cloudera:8020/usr/lib/hive/lib/antlr-runtime-3.4.jar > at > org.apache.hadoop.hdfs.DistributedFileSystem$17.doCall(DistributedFileSystem.java:1093) > at > org.apache.hadoop.hdfs.DistributedFileSystem$17.doCall(DistributedFileSystem.java:1085) > at > org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) > at > org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1085) > at > org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.getFileStatus(ClientDistributedCacheManager.java:288) > at > org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.getFileStatus(ClientDistributedCacheManager.java:224) > at > org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.determineTimestamps(ClientDistributedCacheManager.java:99) > at > org.apache.hadoop.mapreduce.filecache.ClientDistributedCacheManager.determineTimestampsAndCacheVisibilities(ClientDistributedCacheManager.java:57) > at > org.apache.hadoop.mapreduce.JobSubmitter.copyAndConfigureFiles(JobSubmitter.java:267) > at > org.apache.hadoop.mapreduce.JobSubmitter.copyAndConfigureFiles(JobSubmitter.java:388) > at > org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:481) > at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1295) > at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1292) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:415) > at > org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1642) > at org.apache.hadoop.mapreduce.Job.submit(Job.java:1292) > at > org.apache.crunch.hadoop.mapreduce.lib.jobcontrol.CrunchControlledJob.submit(CrunchControlledJob.java:329) > at > org.apache.crunch.hadoop.mapreduce.lib.jobcontrol.CrunchJobControl.startReadyJobs(CrunchJobControl.java:204) > at > org.apache.crunch.hadoop.mapreduce.lib.jobcontrol.CrunchJobControl.pollJobStatusAndStartNewOnes(CrunchJobControl.java:238) > at > org.apache.crunch.impl.mr.exec.MRExecutor.monitorLoop(MRExecutor.java:112) > at > org.apache.crunch.impl.mr.exec.MRExecutor.access$000(MRExecutor.java:55) > at org.apache.crunch.impl.mr.exec.MRExecutor$1.run(MRExecutor.java:83) > at java.lang.Thread.run(Thread.java:745) > {code} > It looks similar to HDFS-7031, where file:/ paths were getting incorrectly > qualified using HDFS information. -- This message was sent by Atlassian JIRA (v6.3.4#6332)