KB Article #168847

Node stops with exit code 6 or 134 during garbage collection with SIGSEGV - SEGV_MAPERR

Problem

-- TE or CN node shuts downs and restarts unexpectedly without any error in the logs

-- The [hostname]_ex.log shows: {DATE TIME} - [ProcessManager] INFO (ProcessWrapper.isFinished:147) - Node [hostname]_te2: Stopped with exit code 6

-- A file hs_err_pid[PID].log has been created with the same timestamp [installDir]/Interchange/bin

-- The hs_err_pid{PID].log file contains the following error occurred during garbage collection:

# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0xfeb604a0, pid=25240, tid=16

Current thread (0x0004a400): GCTaskThread [stack: 0x708a0000,0x70920000] [id=16]

siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x0000000c

Resolution

** A SIGSEGV is a Segmentation Fault error. A Segmentation Fault means, that the JVM tried to access memory it has no access to. The SEGV_MAPERR usually indicates a stack overflow.

** This is a known issues with the Java version used by Interchange, Java 1.6.0_18: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id... and noted in the release notes as well: http://www.oracle.com/technetwork/java/javase/6u18...

In order to prevent this from happening again:

  1. Open the [installDir]/Interchange/jvmarguments.xml in a texteditor
  2. Look for the "<NodeType> <!-- Common to all nodes -->"-section
  3. Add the line:
    <Option>XX:-ReduceInitialCardMarks</Option>
  4. Restart Interchange