1

I run 30 java applications in parallel on a server. Some applications crash during the run without any error log. Gernerated messages of the application are stored in a file (commandlineOutput.txt). But these files do not contain any information about the crash. I build the software on the server (excluding the used libs) using an ant build-file. Different java options have been tried but nothing helped trustworthy. But increasing the Heap-Memory had a positive effect on the stability. Currently I try these java options:

export _JAVA_OPTIONS='-Xms7g -Xmx7g -Xss128m -XX:ErrorFile=/path to the folder where the application results are saved/java_error%p.log'

The 30 applications are started like this:

PATHPREFIX="path to the folder where the application results are saved"
ant -Dstring_prompt="$PATHPREFIX/sim_1/config.txt" "SimulationModel (customscenario)" > $PATHPREFIX/sim_1/commandlineOutput.txt &
...
ant -Dstring_prompt="$PATHPREFIX/sim_30/config.txt" "SimulationModel (customscenario)" > $PATHPREFIX/sim_30/commandlineOutput.txt &

A Snapshot (vmstat -s) of the memory (while the applications run) shows:

           RAM: 264097056 K
      Used RAM: 172826480 K
    active RAM: 174423296 K
non-active RAM: 342224 K

The running system is:

    CPU model/make: AMD Opteron(TM) Processor 6276
          CPU Core: 64
   Thread per core: 2
               RAM: 264097056 K

  Operating System: NixOS 18.09.2574.a7e559a5504 (Jellyfish)
            Kernel: Linux 4.14.118
      Architecture: x86-64
  

Java version:

java version "12.0.2" 2019-07-16
Java(TM) SE Runtime Environment (build 12.0.2+10)
Java HotSpot(TM) 64-Bit Server VM (build 12.0.2+10, mixed mode, sharing)

Used librarys:

junit-4.13.jar
combinatoricslib3-3.3.0.jar
combinatoricslib3-3.3.0-javadoc.jar
mason.20.jar
opencsv-5.1.jar
jfreechart-1.0.14
jgrapht-0.9.1
commons-lang3-3.10.jar
commons-lang3-3.10-javadoc.jar

Has someone an idea where to find the crash log of the jvm or even an idea what causes the crash? I already searched in /tmp and /var but could not find anything.

UweJ
  • 447
  • 3
  • 10
  • Shouldn't the "sim_N/commandlineOutput.txt" files contain something? You are using ">" output redirection, which should redirect both stdin and stderr – Benjamin Maurer Jun 20 '20 at 15:55
  • Unfortunately not. It contains the output of the application, but ends with no error information. I also examined if error messages are passed to commandlineOutput.txt at all. Therefore I provoked a NullPointerException and a out of Heap exception. Both were correctly reported in the commandlineOutput.txt. – UweJ Jun 20 '20 at 17:15

0 Answers0