You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@tez.apache.org by "Jacob Tolar (Jira)" <ji...@apache.org> on 2019/09/11 20:33:00 UTC

[jira] [Created] (TEZ-4084) Tez local mode fails when distributed cache creates link with parent

Jacob Tolar created TEZ-4084:
--------------------------------

             Summary: Tez local mode fails when distributed cache creates link with parent
                 Key: TEZ-4084
                 URL: https://issues.apache.org/jira/browse/TEZ-4084
             Project: Apache Tez
          Issue Type: Improvement
            Reporter: Jacob Tolar


If you configure distributed cache with 'target#parent/link' in Tez Local Mode, the file cannot be created and the job fails:


{code:java}
java.lang.IllegalArgumentException: Invalid prefix or suffix
	at java.nio.file.TempFileHelper.generatePath(TempFileHelper.java:63)
	at java.nio.file.TempFileHelper.create(TempFileHelper.java:127)
	at java.nio.file.TempFileHelper.createTempDirectory(TempFileHelper.java:173)
	at java.nio.file.Files.createTempDirectory(Files.java:950)
	at org.apache.tez.dag.app.launcher.TezLocalCacheManager.localize(TezLocalCacheManager.java:103) {code}
 

I propose: 
 # Ensure the prefix is always valid (e.g. no path separators in it) when creating the temporary copy of the file in TezLocalCacheManager
 # Update tez local mode to behave the same way as mapreduce local mode in this scenario. Mapreduce local mode also doesn't support these types of links (links with a parent directory specified), but if it encounters them it is a soft failure (WARN log message) not a job failure.

 

It is somewhat trickier to correctly support cache files linked with a nonexistent parent; if that feature is required it can be done as a separate JIRA.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)