[ https://issues.apache.org/jira/browse/HADOOP-4577?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12645217#action_12645217 ]
Steve Loughran commented on HADOOP-4577: ---------------------------------------- 1. It would be good for the env variable to get set up too, so that you can do transient libraries. Otherwise a lot of the benefits get lost. 2. It would also be good if the lib/ dir could have subdirs for OS and arch, so that I could have jar with lib/linux/x8632/something.so, linux/lib/amd64/something.so; the runtime would select the right shared lib for the platform. This would also make the feature something that could be tested with a JAR containing a set of platform's shared libraries > Add Jar "lib" directory to TaskRunner's library.path setting to allow JNI > libraries to be deployed via JAR file > ----------------------------------------------------------------------------------------------------------------- > > Key: HADOOP-4577 > URL: https://issues.apache.org/jira/browse/HADOOP-4577 > Project: Hadoop Core > Issue Type: Improvement > Components: mapred > Affects Versions: 0.18.1 > Environment: Hadoop 18.1 Cluster with custom JNI shared libraries > deployed in lib directory of deployment JAR. > Reporter: Ahad Rana > Assignee: Ahad Rana > Fix For: 0.18.3 > > Attachments: HADOOP-4577-v1.patch > > > It is extremely convenient to be able to deploy JNI libraries utilized in a > custom map-reduce job via the job's JAR file. The TaskRunner already > establishes a precedent by automatically adding any jar files contained in > the "lib" directory of the job jar to the child map/reduce process's > classpath. Following this convention, it should also be possible to deploy > custom JNI libraries in the same lib directory. This involves adding the path > to the job jar's lib directory to the VM's library.path setting (after the > jar has been expanded in the job cache directory). This does not elimintate > the need add dependent shared libraries that may be referenced by the JNI > libraries to the system's LD_LIBRARY_PATH variable. In our deployment > configuration, we usually pre-install third party shared libraries across the > cluster and only deploy our custom JNI libraries via the job jar. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.