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