hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellithorpe (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HADOOP-12574) Multiple Xmx Parameters to Java Process
Date Tue, 17 Nov 2015 05:11:11 GMT
Jonathan Ellithorpe created HADOOP-12574:

             Summary: Multiple Xmx Parameters to Java Process
                 Key: HADOOP-12574
                 URL: https://issues.apache.org/jira/browse/HADOOP-12574
             Project: Hadoop Common
          Issue Type: Bug
    Affects Versions: 2.7.1
            Reporter: Jonathan Ellithorpe

When launching hadoop, the setting of environment variable HADOOP_HEAPMAX results in multiple
Xmx parameters being passed to the java application launcher. This is because a default Xmx
setting included in the HADOOP_CLIENT_OPTS in etc/hadoop/hadoop-env.sh, line 61:

# The following applies to multiple commands (fs, dfs, fsck, distcp etc)

is merged into the variable HADOOP_OPTS in bin/hadoop, line 160:

    # Always respect HADOOP_OPTS and HADOOP_CLIENT_OPTS

Orthogonally, the HADOOP_HEAPMAX environment variable triggers the setting of JAVA_HEAP_MAX
in hadoop-config.sh, line 192:

# check envvars which might override default args
if [ "$HADOOP_HEAPSIZE" != "" ]; then
  #echo "run with heapsize $HADOOP_HEAPSIZE"
  #echo $JAVA_HEAP_MAX

Which is ultimately passed to the java application launcher in bin/hadoop, line 166:


The result: two Xmx settings passed to the Java application launcher. Which one is respected
depends on the JVM, but for HotSpot the rightmost setting is respected, and so the HADOOP_HEAPMAX
environment variable has no effect and the default setting in HADOOP_CLIENT_OPTS wins. 

This message was sent by Atlassian JIRA

View raw message