[ 
https://issues.apache.org/jira/browse/OOZIE-1794?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13977503#comment-13977503
 ] 

Robert Kanter commented on OOZIE-1794:
--------------------------------------

I'm not sure I understand what you mean.

In the non-uber case: it appends <java-opt> and <java-opts> to both the 
original values of HADOOP_CHILD_JAVA_OPTS 
(oozie.launcher.mapred.child.java.opts) and of HADOOP_MAP_JAVA_OPTS 
(oozie.launcher.mapreduce.map.java.opts).

In the uber case: it appends the updated (from the non-uber case) 
HADOOP_MAP_JAVA_OPTS to HADOOP_CHILD_JAVA_OPTS, does some stuff to this new 
String, and appends it to YARN_AM_ENV 
(oozie.launcher.yarn.app.mapreduce.am.env).


e.g.
{noformat}
oozie.launcher.mapred.child.java.opts=A
oozie.launcher.mapreduce.map.java.opts=B
oozie.launcher.yarn.app.mapreduce.am.env=C
<java-opt>D</java-opt>
{noformat}
After non-uber code gets executed:
{noformat}
oozie.launcher.mapred.child.java.opts=A D
oozie.launcher.mapreduce.map.java.opts=B D
{noformat}
After über code gets executed:
{noformat}
oozie.launcher.yarn.app.mapreduce.am.env=C A D B D
{noformat}
The only "negative" is that oozie.launcher.yarn.app.mapreduce.am.env can have 
some duplicates, but that's doesn't hurt anything.

> java-opts and java-opt in the Java action don't always work properly in YARN
> ----------------------------------------------------------------------------
>
>                 Key: OOZIE-1794
>                 URL: https://issues.apache.org/jira/browse/OOZIE-1794
>             Project: Oozie
>          Issue Type: Bug
>    Affects Versions: trunk
>            Reporter: Robert Kanter
>            Assignee: Robert Kanter
>         Attachments: OOZIE-1794.patch, OOZIE-1794.patch
>
>
> Currently, when you set {{<java-opts>}} or {{<java-opt>}} in the Java action, 
> it essentially appends these to {{mapred.child.java.opts}} in the launcher 
> job.  
> In YARN, this property is deprecated in favor or {{mapreduce.map.java.opts}} 
> and {{mapreduce.reduce.java.opts}}.  And if 
> {{mapreduce.map/reduce.java.opts}} is set, {{mapred.child.java.opts}} will be 
> ignored.  So in a YARN cluster where mapred-site.xml has 
> {{mapreduce.map.java.opts}} set to something, {{<java-opts>}} and 
> {{<java-opt>}} won't work at all.  
> We should have {{<java-opts>}} and {{<java-opt>}} append to both 
> {{mapred.child.java.opts}} and {{mapreduce.map.java.opts}}.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to