Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.22.0
-
None
-
Reviewed
Description
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
- Calls mkdirs(stagingArea, JOB_DIR_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
Attachments
Attachments
Issue Links
- breaks
-
HADOOP-7629 regression with MAPREDUCE-2289 - setPermission passed immutable FsPermission (rpc failure)
- Closed