[ http://issues.apache.org/jira/browse/HADOOP-52?page=comments#action_12371479 ]
Doug Cutting commented on HADOOP-52: ------------------------------------ The synchronization fixes the problem, but causes everything to run sequentially. I think with the same amount of code we could add a clone() method to FileSystem and provide a better fix. Currently one cannot pass a FileSystem instance to JobClient, but if one could, then we would be changing the CWD of that filesystem underneath other processes that might be using it w/o synchronization. If we want to be totally safe, we could make setWorkingDirectory return a clone, with no side-effects. Cloning an FS should be cheap enough. > mapred input and output dirs must be absolute > --------------------------------------------- > > Key: HADOOP-52 > URL: http://issues.apache.org/jira/browse/HADOOP-52 > Project: Hadoop > Type: Bug > Components: mapred > Versions: 0.1 > Reporter: Doug Cutting > Assignee: Owen O'Malley > Fix For: 0.1 > Attachments: cwd.patch, cwd2.patch > > DFS converts relative pathnames to be under /user/$USER. But MapReduce jobs > may be submitted by a different user than is running the jobtracker and > tasktracker. Thus relative paths must be resolved before a job is submitted, > so that only absolute paths are seen on the job tracker and tasktracker. I > think the simplest way to fix this is to make JobConf.setInputDir(), > setOutputDir(), etc. resolve relative pathnames. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
