TaskRunner creates a symlink with name 'null' if a file is added to 
DistributedCache without fragment
-----------------------------------------------------------------------------------------------------

                 Key: HADOOP-3440
                 URL: https://issues.apache.org/jira/browse/HADOOP-3440
             Project: Hadoop Core
          Issue Type: Bug
          Components: mapred
            Reporter: Abhijit Bagri
            Priority: Minor


When adding a file to DistributedCache by  either :

1. DistributedCache.addCacheArchive(URI, conf) with URI not defining 
fragment(e.g. not as new URI("path#fragment") )
2. DistributedCache.addCacheFile(URI, conf)  with URI not defining 
fragment(e.g. not as new URI("path#fragment") )
3. DistributedCache.addArchiveToClassPath(Path, conf) 

and one sets DistributedCache.createSymlink, TaskRunner creates a link with 
name 'null' in the working directory. 

I think the behavior should be that if fragment is null then no sym link should 
be created, adding in localizeCache() of DistributedCache the following

     boolean doSymlink = getSymlink(conf);
+    if(cache.getFragment() == null) {
+      doSymlink = false;
+    }
     FileSystem fs = getFileSystem(cache, conf);




-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to