[ https://issues.apache.org/jira/browse/MAPREDUCE-1744?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12877347#action_12877347 ]
Arun C Murthy commented on MAPREDUCE-1744: ------------------------------------------ bq. [...] Then FS should be obtained from URI. But that is precisely what we need to fix, we cannot obtain the FS from the URI without a doAs block. Hence the need to pass in the FS. > DistributedCache creates its own FileSytem instance when adding a > file/archive to the path > ------------------------------------------------------------------------------------------ > > Key: MAPREDUCE-1744 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-1744 > Project: Hadoop Map/Reduce > Issue Type: Bug > Reporter: Dick King > Assignee: Krishna Ramachandran > Attachments: BZ-3503564--2010-05-06.patch, h1744.patch, > mapred-1744-1.patch, mapred-1744-2.patch, mapred-1744.patch, > MAPREDUCE-1744.patch > > > According to the contract of {{UserGroupInformation.doAs()}} the only > required operations within the {{doAs()}} block are the > creation of a {{JobClient}} or getting a {{FileSystem}} . > The {{DistributedCache.add(File/Archive)ToClasspath()}} methods create a > {{FileSystem}} instance outside of the {{doAs()}} block, > this {{FileSystem}} instance is not in the scope of the proxy user but of the > superuser and permissions may make the method > fail. > One option is to overload the methods above to receive a filesystem. > Another option is to do obtain the {{FileSystem}} within a {{doAs()}} block, > for this it would be required to have the proxy > user set in the passed configuration. > The second option seems nicer, but I don't know if the proxy user is as a > property in the jobconf. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.