Java – Oozie Java Operations Why the property oozie.launcher.mapred.child.java.opts doesn’t work

Oozie > Java Operations > Why the property oozie.launcher.mapred.child.java.opts doesn’t work… here is a solution to the problem.

Oozie > Java Operations > Why the property oozie.launcher.mapred.child.java.opts doesn’t work

I’m developing Oozie using Java manipulation. Java operations should use the Java option -Xmx15g. So I set the property oozie.mapreduce.map.memory.mb to 25600 (25G) in case I need some extra memory.

After this simple setup, I ran the Oozie job, and then of course I got the OutofMemory error when I was running in Java.

So I set oozie.launcher.mapred.child.java.opts to -Xmx15g:http://downright-amazed.blogspot.fi/2012/02/configure-oozies-launcher-job.html But I’m still getting the same OutofMemory error. Then I tried adding -Xmx15g to the node java-opts inside the Java manipulation node. This works fine, but if so, what exactly is the property oozie.launcher.mapred.child.java.opts?

Does anyone know why this is so? Please give some comments on why this is the case. Thanks in advance.

I really don’t think Oozie is a good tool.

Solution

I’m not sure what “task” means in mapred.child.java.opts

Try using mapreduce.map.java.opts, as shown in this example

<configuration>
    <property>
      <name>oozie.launcher.mapreduce.map.memory.mb</name>
      <value>16384</value>
    </property>
    <property>
      <name>oozie.launcher.mapreduce.map.java.opts</name>
      <value>-Xmx15g</value>
    </property>
    <property>
      <name>oozie.launcher.yarn.app.mapreduce.am.resource.mb</name>
      <value>768</value>
    </property>
    <property>
      <name>oozie.launcher.yarn.app.mapreduce.am.command-opts</name>
      <value>-Xmx512m</value>
    </property>
    <property>
      <name>oozie.launcher.mapred.job.queue.name</name>
      <value>default</value>
    </property>
</configuration>

Related Problems and Solutions