Version 3

    A hang is usually caused by one of the following:

     

    A deadlock

    Some thread/transaction is not giving up a locked resource

     

    A livelock

    Some thread/transaction are continually trying to get a number of locks but they can never complete the

    whole process and the retry is infinite.

     

    A loop

    You have some code "spinning" in a loop that will never finish.

     

    A JVM/OS bug

    There is a problem with the underlying locking primitives, either of the operating system, the c library

    or the way the JVM is using them.

     

    Analysis

    To analyse the problem, you need to get some thread dumps. Preferably more than one a few seconds apart. Then analyse the dump for:

    • Threads that are waiting for locks held by other threads with the other threads not moving (deadlock)

    • Threads waiting for locks that are not held by anybody (JVM/OS bug)

    • Threads continually repeating the same code very quickly, accompanied by high cpu utilization (loop)

     

    Is it a JBoss problem

    If the problem is JBoss code, post a bug report with thread dumps

     

    Referenced by: