[ https://issues.apache.org/jira/browse/MAPREDUCE-2289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robert Joseph Evans updated MAPREDUCE-2289: ------------------------------------------- Fix Version/s: 0.23.3 > Permissions race can make getStagingDir fail on local filesystem > ---------------------------------------------------------------- > > Key: MAPREDUCE-2289 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-2289 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: job submission > Affects Versions: 0.22.0 > Reporter: Todd Lipcon > Assignee: Ahmed Radwan > Fix For: 1.1.0, 0.23.3, 2.0.1-alpha > > Attachments: MAPREDUCE-2289_branch-1.0.patch, > MAPREDUCE-2289_trunk.patch, mapreduce-2289.txt > > > I've observed the following race condition in TestFairSchedulerSystem which > uses a MiniMRCluster on top of RawLocalFileSystem: > - two threads call getStagingDir at the same time > - Thread A checks fs.exists(stagingArea) and sees false > -- Calls mkdirs(stagingArea, JOB_DIR_PERMISSIONS) > --- mkdirs calls the Java mkdir API which makes the file with umask-based > permissions > - Thread B runs, checks fs.exists(stagingArea) and sees true > -- checks permissions, sees the default permissions, and throws IOE > - Thread A resumes and sets correct permissions -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira