[ https://issues.apache.org/jira/browse/MAPREDUCE-5210?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13650771#comment-13650771 ]
samar commented on MAPREDUCE-5210: ---------------------------------- We could have two approaches 1) introduce a new variable , fs.authorization.supported . We can do the owner checks only if the the variable is true pros. Easy to implement , less changes cons. Has to set by the user 2) Introduce a new Api in the filesystem boolean isAuthorizationSupoorted() and any FileSystem , eg S3 should return the false etc. This is the responsibility of the FileSytem implementor to set the variable accordingly . We use this in JobSubmissionFiles to determine if we need to do the owner check. pros. User need not have to worry as the filesytem implementor know best cons. More/incompatible changes > 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