LinuxTaskController does not work when JniBasedUnixGroupsNetgroupMapping or
JniBasedUnixGroupsMapping is enabled
----------------------------------------------------------------------------------------------------------------
Key: MAPREDUCE-2915
URL: https://issues.apache.org/jira/browse/MAPREDUCE-2915
Project: Hadoop Map/Reduce
Issue Type: Bug
Components: task-controller
Affects Versions: 0.20.205.0
Reporter: Kihwal Lee
Assignee: Kihwal Lee
Fix For: 0.20.205.0
When a job is submitted, LinuxTaskController launches the native
task-controller binary for job initialization. The native program does a series
of prep work and call execv() to run JobLocalizer. It was observed that
JobLocalizer does fails to run when JniBasedUnixGroupsNetgroupMapping or
JniBasedUnixGroupsMapping is enabled, resulting in 100% job failures.
JobLocalizer normally does not need the native library (libhadoop) for its
functioning, but enabling a JNI user-to-group mapping function cause it to load
the library. However, JobLocalizer cannot locate the library since
"java.library.path" is not set.
The proposed solution is to pass the java.library.path property through
task-controller. LinuxTaskController already does it when launching the task
log truncater.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira