[ https://issues.apache.org/jira/browse/MAPREDUCE-1744?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Krishna Ramachandran updated MAPREDUCE-1744: -------------------------------------------- Attachment: mapred-1744-1.patch Changes since Chris's last review Removed deprecated string and restored correct Strings (bad copy paste from an earlier release caused this) TestCommandLineJobSubmission failure is not probably related to this patch - it has random failures with or without this patch Though it passed with patch [junit] Running org.apache.hadoop.mapred.TestCommandLineJobSubmission [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 56.406 sec I get this error on a fresh checkout from trunk testshell/ExternalMapReduce java.lang.NoClassDefFoundError: testshell/ExternalMapReduce at org.apache.hadoop.mapred.TestCommandLineJobSubmission.testJobShell(TestCommandLineJobSubmission.java:122) Caused by: java.lang.ClassNotFoundException: testshell.ExternalMapReduce at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) > 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.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.