[ https://issues.apache.org/jira/browse/MAPREDUCE-7152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17903041#comment-17903041 ]
wuchang commented on MAPREDUCE-7152: ------------------------------------ [~pbacsko] May I know more details for this? I exactly meet the same issue on my Hadoop Yarn cluster in which different NodeManagers have different running location. I configure my mapred-site.xml as below: {code:java} <property> <name>mapreduce.reduce.env</name> <value>LD_LIBRARY_PATH=$HADOOP_COMMON_HOME/lib/native:$JAVA_LIBRARY_PATH:/usr/lib/x86_64-linux-gnu</value> </property> <property> <name>mapreduce.map.env</name> <value>LD_LIBRARY_PATH=$HADOOP_COMMON_HOME/lib/native:$JAVA_LIBRARY_PATH:/usr/lib/x86_64-linux-gnu</value> </property>{code} And all the mappers which run on the same host with ApplicationMaster succeeded, all the mappers which run on the different hosts with ApplicationMaster failed for Snappy not found issue. I find that seems that all mappers's LD_LIBRARY_PATH is using the expanded value of $HADOOP_COMMON_HOME on ApplicationMaster, then mappers running on different hosts with ApplicationMaster will always fail. > LD_LIBRARY_PATH is always passed from MR AM to tasks > ---------------------------------------------------- > > Key: MAPREDUCE-7152 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-7152 > Project: Hadoop Map/Reduce > Issue Type: Improvement > Reporter: Peter Bacsko > Assignee: Peter Bacsko > Priority: Major > Attachments: MAPREDUCE-7152-NMAdminEnvPOC_POC01.patch, > MAPREDUCE-7152-lazyEval_POC01.patch > > > {{LD_LIBRARY_PATH}} is set to {{$HADOOP_COMMON_HOME/lib/native}} by default > in Hadoop (as part of {{mapreduce.admin.user.env}} and > {{yarn.app.mapreduce.am.user.env}}), and passed as an environment variable > from AM container to task containers in the container launch context. > In cases where {{HADOOP_COMMON_HOME}} is different in AM node and task node, > tasks will fail to load native library. A reliable way to fix this is to add > {{LD_LIBRARY_PATH}} in {{yarn.nodemanager.admin-env}} instead. > Another approach is to perform a lazy evaluation of {{LD_LIBRARY_PATH}} on > the NM side. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: mapreduce-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: mapreduce-issues-h...@hadoop.apache.org