[ https://issues.apache.org/jira/browse/MAPREDUCE-5210?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13651574#comment-13651574 ]
Ivan Mitic commented on MAPREDUCE-5210: --------------------------------------- bq. FileSystem should have an API to check ownership. I like the idea of exposing a FileSystem API for checking the ownership, something like {{FileSystem#isOwnedByUser(String username…)}}. We had a problem with this check on Windows with many tests that use the local file system. Check out HADOOP-8457 to see what we did in branch-1-win. Just for completeness :), another, 3rd option is to have S3 implement setPermissions/setOwner FileSystem APIs. We ended up doing this with our Azure FileSystem implementation to be able to run MR on top of it. > Job submission has strict permission validation > ----------------------------------------------- > > Key: MAPREDUCE-5210 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-5210 > Project: Hadoop Map/Reduce > Issue Type: Bug > Reporter: Amareshwari Sriramadasu > Assignee: samar > > The following code in JobSubmissionFiles.java mandates strict permission on > job submission : > {noformat} > if (fs.exists(stagingArea)) { > FileStatus fsStatus = fs.getFileStatus(stagingArea); > String owner = fsStatus.getOwner(); > if (!(owner.equals(currentUser) || owner.equals(realUser))) { > throw new IOException("The ownership on the staging directory " + > stagingArea + " is not as expected. " + > "It is owned by " + owner + ". The directory must " + > "be owned by the submitter " + currentUser + " or " + > "by " + realUser); > } > {noformat} > For file systems such as S3, which do not have permission concept, user can > never submit a job with staging area in S3. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira