KBI 311313 Issue Addressed Argent for Oracle ASM/STANDBY Server Rules Causing Exception And Java Crash Dump Files When Using Shared Monitor Engine Process In Pool Mode

Version

Argent Advanced Technology 3.1A-1510-A and earlier

Date

Wednesday, 18 November 2015

Summary

An issue has been addressed that Argent for Oracle ASM/STANDBY Server Rules causing exception and Java crash dump files when running Relator in ‘Shared Monitoring Engine Process In Pool’ mode

Technical Background

Argent for Oracle uses JDBC to connect to Oracle ASM/STANDBY Servers and this is achieved through JNI (Java Native Interface) libraries

Argent for Oracle creates a Java Virtual Machine (JVM) through the JNI API ‘JNI_CreateJavaVM’

Using this JVM, Argent for Oracle executes the JDBC connectivity code

JNI_CreateJavaVM does not allow to create more than one instance of JVM in a single process

When Relators are executed in ‘Use Shared Monitor Engine Process in Pool’ mode, each thread in the process tries to create its own JVM instance which results in a JVM crash

For each JVM crash Java creates two crash dump files in the current working directory

A text crash file called dump and a binary crash file called mdmp (a Windows platform mini dump) and both filenames start with ‘hs_err_pid’

The text dump file is a small file, usually under 100Kb

The binary crash files is very large, usually above 250MB

Following screenshot shows such crash dump files:

This issue is addressed by creating a single JVM for the Relator process and share the JVM among all threads

JNI flag to avoid the creation of binary crash dump file is also turned ON so that only the text crash file is created if a JVM crash is occurred

Resolution

Upgrade to Argent Advanced Technology 3.1A-1510-T4 or later