IBM Support

PK70783: JAVAOPTIONS ARGUMENTS PASSED INTO WSADMIN.SH ARE IGNORED.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as documentation error.

Error description

  • The "Wsadmin tool" (rxml_commandline) topic in the Information
    Centers for WebSphere Application Server Version 6.0.x states
    that you can use the following command to change the heap size:
    
    wsadmin.sh -lang jython -javaoption -Xms128m -Xmx256m -f test.py
    
    However, the wsadmin.sh script contains a default
    $PERF_JVM_OPTIONS variable that overrides the -javaoption
    argument, which is specified by the user.
    
    In the wsadmin.sh script, the $PERF_JVM_OPTIONS variable is
    passed into the Java virtual machine (JVM) after the
    -javaoption argument. When the JVM is created, it creates the
    heap size that is specified in the $PERF_JVM_OPTIONS variable
    instead of heap sizes that are passed by the -javaoption
    argument.
    

Local fix

  • Modify the wsadmin.sh and change the order so the $javaOption
    variable is passed in after the $PERF_JVM_OPTIONS:
    
    
    Example of original shell script (wsadmin.sh):
    
    "$JAVA_HOME/bin/java" \
      -Xbootclasspath/p:"$WAS_BOOTCLASSPATH" \
      $EXTRA_X_ARGS \
      $CONSOLE_ENCODING \
      $javaOption \
      $WAS_DEBUG \
      "$CLIENTSAS" \
      "$CLIENTSOAP" \
      ${JAASSOAP:+"$JAASSOAP"} \
      -Dcom.ibm.ws.scripting.wsadminprops="$WSADMIN_PROPERTIES" \
      -Dconfig_consistency_check="$CONFIG_CONSISTENCY_CHECK" \
      -Dwas.install.root="$WAS_HOME" \
      -Duser.install.root="$USER_INSTALL_ROOT" \
      -Dwas.repository.root="$CONFIG_ROOT" \
      -Dlocal.cell="$WAS_CELL" \
      -Dlocal.node="$WAS_NODE" \
      -Dcom.ibm.ws.management.standalone=true \
      -Dcom.ibm.itp.location="$WAS_HOME/bin" \
      -Dws.ext.dirs="$WAS_EXT_DIRS" \
      $EXTRA_D_ARGS \
      $JVM_EXTRA_CMD_ARGS \
      $PERF_JVM_OPTIONS \
      $WAS_LOGGING \
      -classpath "$C_PATH" com.ibm.ws.bootstrap.WSLauncher \
      $SHELL "${nonJavaOption[@]}"
    
    Example of modified shell script (wsadmin.sh):
    
    "$JAVA_HOME/bin/java" \
      -Xbootclasspath/p:"$WAS_BOOTCLASSPATH" \
      $EXTRA_X_ARGS \
      $CONSOLE_ENCODING \
      $WAS_DEBUG \
      "$CLIENTSAS" \
      "$CLIENTSOAP" \
      ${JAASSOAP:+"$JAASSOAP"} \
      -Dcom.ibm.ws.scripting.wsadminprops="$WSADMIN_PROPERTIES" \
      -Dconfig_consistency_check="$CONFIG_CONSISTENCY_CHECK" \
      -Dwas.install.root="$WAS_HOME" \
      -Duser.install.root="$USER_INSTALL_ROOT" \
      -Dwas.repository.root="$CONFIG_ROOT" \
      -Dlocal.cell="$WAS_CELL" \
      -Dlocal.node="$WAS_NODE" \
      -Dcom.ibm.ws.management.standalone=true \
      -Dcom.ibm.itp.location="$WAS_HOME/bin" \
      -Dws.ext.dirs="$WAS_EXT_DIRS" \
      $EXTRA_D_ARGS \
      $JVM_EXTRA_CMD_ARGS \
      $PERF_JVM_OPTIONS \
      $javaOption \
      $WAS_LOGGING \
      -classpath "$C_PATH" com.ibm.ws.bootstrap.WSLauncher \
      $SHELL "${nonJavaOption[@]}"
    
    This change is made to the wsadmin.sh in the <WAS_HOME>/bin
    directory, not in the <WAS_HOME>/profiles/default/bin directory.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  This APAR affects administrators of         *
    *                  WebSphere Application Server V6.0.1 and     *
    *                  V6.1 who want to use the wsadmin.sh         *
    *                  command to change their initial or maximum  *
    *                  Java heap size.                             *
    ****************************************************************
    * PROBLEM DESCRIPTION: The Information Centers for WebSphere   *
    *                      Application Server Versions 6.0.1 and   *
    *                      6.1 do not document the changes that    *
    *                      you must make to the wsadmin.sh         *
    *                      file before you can use the             *
    *                      -javaoption option on the wsadmin.sh    *
    *                      command. You can use the command to     *
    *                      change the initial and maximum Java     *
    *                      heap sizes.                             *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    In WebSphere Application Server Versions 6.0.1 and 6.1, the
    wsadmin.sh file contains a PERF_JVM_OPTIONS variable that sets
    the default values for the initial and maximum heap sizes.
    This variable overrides any maximum and initial heap size
    values that you specify on the -javaoption parameter when
    you issue the wsadmin.sh command. The Information Centers for
    WebSphere Application Server Versions 6.0.1 and 6.1 do not
    indicate that you have to change the location of the
    $PERF_JVM_OPTIONS \ line in the wsadmin.sh file before you can
    use the -javaoption option on the wsadmin.sh command. You can
    use the command to change the initial and maximum Java heap
    sizes.
    

Problem conclusion

  • This APAR requires changes to documentation.
    
    NOTE: Periodically, we refresh the documentation on our Web
    site, so the changes might have been made before you read this
    text. To access the latest on-line documentation, go to the
    product library page at:
    
    http://www.ibm.com/software/webservers/appserv/library
    
    A change to the z/OS version of the WebSphere Application
    Server Version 6.0.1 and 6.1 Information Centers will be made
    available in October 2008.
    
    The following information will be added to the topic "Wsadmin
    tool":
    
    Avoid trouble: wsadmin.sh contains a PERF_JVM_OPTIONS variable
    that sets default maximum and minimum heap sizes. This
    variable overrides any value that you specify for -javaoption
    in a wsadmin.sh command. To enable options specified on
    wsadmin.sh commands to override these default values, modify
    the wsadmin.sh file such that the $PERF_JVM_OPTIONS statement
    is encountered before the $javaOption statement.
    
    The following example illustrates what the initial lines of
    code in the wsadmin.sh file should look like after you change
    the order of the $PERF_JVM_OPTIONS and $javaOption statements:
    
    "$JAVA_HOME/bin/java" \
     -Xbootclasspath/p:"$WAS_BOOTCLASSPATH" \
     $EXTRA_X_ARGS \
     $CONSOLE_ENCODING \
     $PERF_JVM_OPTIONS \
     $javaOption \
     $WAS_DEBUG \
     "$CLIENTSAS" \
    
     ...
    
    $SHELL "${nonJavaOption[@]}"
    

Temporary fix

Comments

APAR Information

  • APAR number

    PK70783

  • Reported component name

    WEBSPHERE FOR Z

  • Reported component ID

    5655I3500

  • Reported release

    601

  • Status

    CLOSED DOC

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2008-08-19

  • Closed date

    2008-10-21

  • Last modified date

    2008-11-18

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    PK70892

Fix information

Applicable component levels

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SS7K4U","label":"WebSphere Application Server for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.0.1","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
10 February 2022