This page last changed on Apr 11, 2007 by jeff.

Symptoms

If you:

  • discover JIRA (and other webapps) completely unavailable
  • the Java process isn't even running, and you're sure no-one manually shut it down
  • you find files with names like hs_err_pid20929.log being created in your app server's bin directory (wherever you start it from), containing text like:
    #
    # 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.

What's happening

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.

So..

That's right, we're abdicating responsibility. Java crashes are problems in the virtual machine, not our software. Not even the most wildly broken pure Java software should be able to crash the JVM.

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 Causes of OutOfMemoryErrors page and follow the suggestions there.

What should I do?

  • Download the latest JDK and use it. Crashes are often caused by JDK bugs that get fixed over time.
  • 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.
  • As a last resort, you could try a non-Sun JVM, from vendors such as IBM, BEA (JRockit) or Apache (Harmony).

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.


layers.png (image/png)
layers.png (image/png)
Document generated by Confluence on Oct 06, 2009 00:26