You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-dev@hadoop.apache.org by "Anupam Seth (Created) (JIRA)" <ji...@apache.org> on 2012/03/27 20:17:31 UTC

[jira] [Created] (MAPREDUCE-4072) User set java.library.path seems to overwrite default creating problems native lib loading

User set java.library.path seems to overwrite default creating problems native lib loading
------------------------------------------------------------------------------------------

                 Key: MAPREDUCE-4072
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-4072
             Project: Hadoop Map/Reduce
          Issue Type: Bug
          Components: mrv2
            Reporter: Anupam Seth
            Assignee: Anupam Seth


This was found by Peeyush Bishnoi.

While running a distributed cache example with Hadoop-0.23,
tasks are failing as follows:
------------------------------------------------------------------------------------------------------------

Exception from container-launch:
org.apache.hadoop.util.Shell$ExitCodeException: at
org.apache.hadoop.util.Shell.runCommand(Shell.java:261) at
org.apache.hadoop.util.Shell.run(Shell.java:188) at
org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:381) at
org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.launchContainer(LinuxContainerExecutor.java:207)
at
org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:241)
at
org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:68)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at
java.util.concurrent.FutureTask.run(FutureTask.java:138) at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619) main : command provided 1 main : user
is <user>
------------------------------------------------------------------------------------------------------------

Same Pig script and command work successfully on 0.20

See this in the stderr:

Exception in thread "main" java.lang.ExceptionInInitializerError
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at
org.apache.hadoop.conf.Configuration.getClassByNameOrNull(Configuration.java:1179)
    at
org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:1149)
    at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1238)
    at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1264)
    at org.apache.hadoop.security.Groups.(Groups.java:54)
    at
org.apache.hadoop.security.Groups.getUserToGroupsMappingService(Groups.java:178)
    at
org.apache.hadoop.security.UserGroupInformation.initUGI(UserGroupInformation.java:252)
    at
org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:223)
    at
org.apache.hadoop.security.UserGroupInformation.setConfiguration(UserGroupInformation.java:265)
    at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:75)
Caused by: java.lang.RuntimeException: Bailing out since native library
couldn't be loaded
    at
org.apache.hadoop.security.JniBasedUnixGroupsMapping.(JniBasedUnixGroupsMapping.java:48)
    ... 12 more

Pig command:
$ pig -Dmapred.job.queue.name=<queue> -Dmapred.cache.archives=<archives> -Dmapred.child.java.opts="-Djava.library.path=./ygeo/lib
-Dip2geo.preLoadLibraries=<some other libs>" -Djava.io.tmpdir=/grid/0/tmp -Dmapred.create.symlink=yes -Dmapred.job.map.memory.mb=3072 piggeoscript.pig



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira