Java Crashes
Symptoms
- JIRA (and other webapps) are completely unavailable.
- The Java process is not running and it was not shut down manually.
Files with names like
hs_err_pid20929.log
being created in the app server'sbin
directory, containing text such as the below:# # An unexpected error has been detected by HotSpot Virtual Machine: # # SIGSEGV (0xb) at pc=0xfe9bb960, pid=20929, tid=17 # # Java VM: Java HotSpot(TM) Server VM (1.5.0_01-b08 mixed mode) # Problematic frame: # V [libjvm.so+0x1bb960] # --------------- T H R E A D --------------- Current thread (0x01a770e0): JavaThread "JiraQuartzScheduler_Worker-1" [_thread_in_vm, id=17] siginfo:si_signo=11, si_errno=0, si_code=1, si_addr=0x00000000 Registers: O0=0xf5999882 O1=0xf5999882 O2=0x00000000 O3=0x00000000 O4=0x00000000 O5=0x00000001 O6=0xc24ff0b0 O7=0x00008000 G1=0xfe9bb80c G2=0xf5999a48 G3=0x0a67677d G4=0xf5999882 G5=0xc24ff380 G6=0x00000000 G7=0xfdbc3800 Y=0x00000000 PC=0xfe9bb960 nPC=0xfe9bb964
This indicates Java is crashing.
Cause
Web applications like JIRA and Confluence run in a Java virtual machine (JVM). The virtual machine is responsible for emulating a CPU, managing memory and devices, just like the operating system does for native applications (MS Office, web browsers etc).
A Java virtual machine crash is analogous to getting a Windows Blue Screen of Death when using MS Office or a web browser.
That said, JVM bugs causing crashes often appear when the JVM is running out of memory. The hs_err_pid*.log
file should list the state of memory at the time of the crash. If the JVM was low on memory, then it's a good idea to read the JIRA Crashes Due to 'OutOfMemoryError Java heap space' page and follow the suggestions there.
Resolution
- Download the latest JDK and use it. Crashes are often caused by JDK bugs that get fixed over time. This is true for JVM Segfault (SIGSEGV) After Plugin Initialisation.
- Ensure that your operating system is one of the Supported System Configurations, and (especially for Solaris) ensure that the operating system has all current required patches applied.
- In rare circumstances, bugs in the product can cause a SIGSEGV fault, like Greenhopper can crash 64bit JVMs under Linux
And of course, you can always let us know (include the hs_err_pid) file), and we can provide advise taking into account the specifics of your situation.