2014년 7월 1일 화요일

[TechNote] WebSphere Application Server V6.1 installer or LaunchPad crashes and produces system core file on AIX running on POWER7 systems

WebSphere Application Server V6.1 installer or LaunchPad crashes and produces system core file on AIX running on POWER7 systems


Technote (troubleshooting)


Problem(Abstract)

The WebSphere Application Server V6.1 installer crashes upon startup and produces a system core file on AIX systems (such as AIX V6.1) running on POWER7 processors. The crash occurs due to a "gpf" in the "libj9jit23.so" module. The installer might not produce any output; instead, it returns to the shell command prompt very quickly after running the install. This technote explains how to resolve this installer crash issue.

Symptom

When running the WebSphere Application Server V6.1 install utility, the installer immediately crashes upon startup. When running the LaunchPad utility, the LaunchPad menu will come up, but upon clicking "Install WebSphere Application Server V6.1", the installer process crashes in the background immediately.
The crashing installer process will produce a system core file. The installer will not produce any output or error messages. If you run the install utility from a shell command prompt, it will appear to exit the process and return control to the shell almost immediately.

This problem occurs on AIX systems using POWER7 processors. (If you are unsure whether your system uses POWER7 processors, see the Diagnosing the problem section below.)

Cause

This crash occurs due to a known issue with the installer's Java SDK on AIX running on POWER7 processors. For complete details, see IBM WebSphere Application Server support on POWER7 hardware (1422150).

This technote specifically refers to an issue with the WebSphere Application Server V6.1 installer. Note that WebSphere Application Server V6.0 is not supported on POWER7 processors. See the same technote mentioned above for details.

Diagnosing the problem

Determining whether your system is using POWER7 processors
To determine whether your system is using a POWER7 processor, run the following command:
prtconf | grep -i "Processor Type"

If the system's processors are POWER7 processors, then the output will display the following: 

Processor Type: PowerPC_POWER7

The processor implementation mode might also be relevant to your product installation. To determine the processor implementation mode, run the following command: 

prtconf | grep -i "Processor Implementation Mode"


Displaying error information from the installer (optional) 
You might want to follow this advice if you need to confirm with certainty that the product installer is experiencing this crash. But, this is optional. You can proceed to the Solution section and try using the solutions listed even if you have not confirmed the root cause of the crash. The solutions do not negatively affect the installer. 

Normally, the installer suppresses output to the system console. When you need the installer's diagnostic output to be printed directly to the console, use the parameter -is:javaconsole . For example, run the install command as shown here: 
./install -is:javaconsole 


When the installer is run with this parameter, and it crashes for the reasons described in this technote, then it will produce diagnostic output similar to the following example excerpts: 

Unhandled exception
Type=Segmentation error vmState=0x00040000
Target=2_30_20060501_06428_BHdSMr (AIX 6.1)
CPU=ppc64
J9Generic_Signal_Number=00000004 Signal_Number=0000000b
Error_Value=00000000 Signal_Code=00000033
[Additional details]
Module=install_location/JDK/jre.pak/repository/package.java.jre/java/jre/bin/libj9jit23.so
Module_base_address=090000000108D000
JVMDUMP006I Processing Dump Event "gpf", detail "" - Please Wait.
[Additional details]

Note: The crash occurs due to a "Segmentation error" and causes a "gpf" event. The "Module=" section which lists the specific faulting module shows that the module is named "libj9jit23.so". This technote addresses the installer crash that occurs under these specific conditions.

Resolving the problem

Solution
Use these steps to resolve the installation crash issue.
  1. Prior to running the installation utility (./install command) or the LaunchPad (./launchpad.sh command), run this command at a shell command prompt:
    export JAVA_COMPILER=none
  2. Run the installer or LaunchPad utility. Be sure to run the command from the same shell session (or telnet session) as the command in the previous step. If you have closed that shell session, run the command from the previous step again.

    Note: You can combine steps 1 and 2 by creating a shell script which sets the environment variable and then executes the installer. This may be useful when performing a large number of installs. Also, doing that will help ensure that the variable is only set for the installer, and not any other Java processes.
  3. Proceed to install the product. If possible, do not create a profile when the product is installed. Instead, create the profile later. This will reduce the time the installer program needs to run.

    If you are installing an edition of the product which forces you to create a profile at install-time, then it is acceptable to allow the profile creation to occur. The installation process may take longer than normal, though.
  4. WebSphere Application Server V6.1 must be updated to a higher fix pack level in order to support the POWER7 architecture. After the installation successfully completes, update the product to the appropriate fix pack level.

    For more details about the minimum fix pack level supported on POWER7 processors, see IBM WebSphere Application Server support on POWER7 hardware (1422150). 

    Note: You must upgrade both the application server fix pack and the Java SDK fix pack. (A general recommendation is to use application server Fix Pack 29 or higher and Java SDK Fix Pack 29 or higher in order to address the issue. The actual minimum requirements might be lower, depending on your operating system configuration. See the technote mentioned above for more specific details.)
  5. If you have not yet created a profile, you can create a profile after the installation is complete. Before invoking the profile creation tool, unset the JAVA_COMPILER variable. You can do so either by closing the shell session that ran the installer, or by running the following command:

    unset JAVA_COMPILER

Effects of using the JAVA_COMPILER variable 
Using the JAVA_COMPILER=none setting as suggested above will cause the Java SDK to turn off the JIT compiler feature in Java during the installation process. This feature has an issue running on POWER7 processors which is resolved when the appropriate fix pack is applied to the installed product. Turning off the feature prevents the installer from crashing. 

Once the installation is complete, and the product is updated to the appropriate fix pack level, then the setting is no longer needed. The fact that the JIT was disabled during the installation will not affect the product in the future. This has no negative effects on the install process, except it might take slightly longer to install the product. 

It is important to ensure that the JAVA_COMPILER=none setting is no longer in effect after the installation is complete. If that setting is still in effect when an application server is started, then its performance is severely impacted. This is why it is especially important to remove this setting once the product installation is complete. (Note that application servers which are already running are not affected by setting this environment variable, so it is okay to use this environment variable to solve an installation problem while other applications are still running on the system.) 



Alternative solution 
The Installation Factory utility allows you to create a Custom Install Package (CIP), which is a WebSphere Application Server V6.1 installer that combines the original product installation with a fix pack. You can use Installation Factory to create a CIP that includes an application server fix pack and Java SDK fix pack at a level that is compatible with POWER7 systems. You can then run the CIP to install the product without using the JAVA_COMPILER=none setting. 

For more details about the minimum fix pack level supported on POWER7 processors, see IBM WebSphere Application Server support on POWER7 hardware (1422150) . Note that you must include both the application server fix pack and the Java SDK fix pack in the CIP.

댓글 없음:

댓글 쓰기