Search This Blog

Thursday, February 20, 2014

SAP Note 940893 - Analysis of errors within the startup of J2EE Engine 6.40

Symptom

A problem occurs when you start J2EE Engine 6.40 or 7.00.       As of 6.40 Support Package 17 and 7.00 Support Package 8, the trace file of the startup framework references this note for further analysis.

Other Terms
error 193 LoadLibrary jvm.dll

Reason and Prerequisites

Since the start process of the J2EE Engine combines various SAP Support components, this note should help you to fine the correct queue to ensure that you receive support more quickly. For this reason, the 'Solution' section is also divided into the individual steps for the startup and the relevant components.

Solution

The first step in starting the J2EE Engine is to create the Java virtual machine. For this, you require the correct version of the JDK (refer to the section entitled 'Confirmation of the VM in use' in Note 943498). It is not sufficient to just have the Java Runtime JRE because you need the full JDK (including the Java Comiler javac) to compile the JSPs and EJB Stubs.

1. JDK detection issues

The engine is not able to start due to problems detecting the JDK.
- Check that you have installed the correct JDK version.
    Read the section entitled 'Confirmation of the VM in use' in Note 943498 to find the appropriate platform-specific note.

To identify the current version of the JDK, execute the following command at command line level:
           java -version                                               You must have installed the complete JDK/JSDK (including the Java Compiler javac).
- Check if there are redundant JDK versions and make sure that the SAP J2EE Engine uses the correct JDK version.

                                              Therefore, verify the corresponding parameter in the instance profile
        /usr/sap/<SID>/SYS/profile/<SID>_JC<num>_<host>
        jstartup/vm/home = <jdk home directory>.
This parameter has a higher priority than the environment variable JAVA_HOME.
                                                                - On Unix systems, it is important to verify the user rights.
If you experience problems with the JDK, open a message under the component for the relevant JDK provider (for example, BC-OP-SUN-JSE).

Helpful Notes:
718901   How to change the JDK of the J2EE Engine
817991   Startup Framework fails when starting a JLaunch process
741289   Profile parameters of the J2EE Engine are lost
943498   J2EE Engine does not start 6.40 and 7.0

THe JDK detection results will be stored in the configuration files
             *.vmprop
(for example, instance.properties.vmprop).
If these files contain the wrong information (for example, the path is wrong due to an upgrade), they can be deleted. Be careful not to delete the corresponding properties file.


2. Java VM shared library issues

- Check whether the *.vmprop files contain the correct information.
     If not, delete them. They will be created again the next time you start the engine.

- In Windows systems, error code 193 indicates that the wrong version of JDK was applied (incorrect bit lengths).

   On 64-bit systems, make sure that the JDK is also 64 bit.

  The trace fie contains the following error entry:

*** ERROR => DlLoadLib: LoadLibrary(jvm.dll) Error 193

- Unix systems issue the following error message: "cannot open
   file". Even though the file exists, this may also occur because the bit length is incorrect for JDK.
     Check to see if this is the case.

If you experience problems with the properties files, open a message under the component BC-JAS-SF.

Helpful Notes:
861215   Recommended Settings for the Linux on AMD64/EM64T JVM
722520   Recommended JVM and VM Settings for the Tru64 VM


3. Java VM initialization issues

Problems with initializing the VM are often caused by incorrect parameters in the VM. For more detailed information, refer to the dev_<node> trace file (for example, dev_server0) or std_<node>.out  trace file (for example, std_server0.out).
If std_<node>.out does not exist, check whether the checkmark for the console is set in the config tool. You can also verify this in the instance.properties file. The parameter console is set to 'Yes'. Change this using the config tool.
Examples of incorrect parameters:
- The defined heap is too big. There is not enough contiguous virtual address space to define the heap.

      As a result, the system issues the following error message:
       could not reserve enough space for object heap.
    This error often occurs on 32-bit Windows systems (Note 835704).
    You can use the address space viewer (Note 736462) and preload DLL (Note 853696) to resolve this issue.

- Unknown parameters, for example, -XX:<name> on IBM JDK result in the following error messages:

      Command-line option unrecognised: -XX:+PrintGCTimeStamps
    These error messages are in std_bootstrap.out.
    If the system issues this type of error message, open the instance.properties file and delete the parameter. The bootstrap process does not read this information from the database, but from this file.




When you adjust the memory settings after the installation, note that the application-specific recommendations have priority over the platform-specific and general settings.

On Windows platforms, you cannot initialize the JVM if a copy of JVM.DLL exists in the %windir%\system32 directory. The error message in dev_bootstrap is:
       *** ERROR => JHVM_LoadJavaVM: Cannot create Java VM (rc=-1)
       *** ERROR => Cannot load Java VM (server) (rc=-1)
       JLaunchCloseProgram: good bye (exitcode=-1)
To confirm this, set the trace level to 3 and restart the engine. The system issues the following error message:
      load shared library (jvm.dll), hdl 0
      using "C:\WINDOWS\system32\jvm.dll"
Delete the copy in the %windir%\system32 directory.

If you experience problems in this step, open a message detailing the error under the component BC-JAS-COR.

Helpful Notes:
709140 Recommended JDK and VM Settings for the WebAS630/640 SP4
723909 Java VM Settings for J2EE 6.30/6.40/7.0
716604 Access to Sun J2SE and recommended J2SE options


4. Java VM terminated with a non-zero exit code

These errors require a more detailed analysis.
Therefore, send the complete compressed content of the work directory and the log of the node affected (for example, the content of       \usr\sap\SID\inst<No>\j2ee\cluster\server0\log\system\server0.log) to SAP Support.

Note for Support employees: See internal Note <999112>.

Helpful Notes:
716604 Access to Sun J2SE and recommended J2SE options
709140 Recommended JDK and VM Settings for the WebAS630/640 SP4
723909 Java VM Settings for J2EE 6.30/6.40/7.0

No comments:

Post a Comment