Let me see the Java Gurus

I am having a tomcat application running on solaris 9 and it starts using about 100% CPU after some time. I tried prstat -L and got the threads that were consuming the max CPU. On doing a truss for the process Id I found out the following about those thread. There were about 4 thread that were comsuming all the CPU resources.

The following identical output I got for all the threads:

/102: Incurred fault #6, FLTBOUNDS %pc = 0xF9C4DC24

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: Received signal #11, SIGSEGV [caught]

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: sigprocmask(SIG_SETMASK, 0xCA8FDE5C, 0x00000000) = 0

/102: sigprocmask(SIG_SETMASK, 0xFF17A094, 0xCA8FDC10) = 0

/102: lwp_unpark(102, 1) = 0

/102: setcontext(0xCA8FDC20)

/102: lwp_mutex_lock(0x000566F0) = 0

/102: lwp_cond_broadcast(0x00056708) = 0

/102: lwp_mutex_wakeup(0x000566F0) = 0

/102: lwp_mutex_lock(0x00056780) = 0

/102: Incurred fault #6, FLTBOUNDS %pc = 0xF9C4DC24

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: Received signal #11, SIGSEGV [caught]

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: sigprocmask(SIG_SETMASK, 0xCA8FDE5C, 0x00000000) = 0

/102: sigprocmask(SIG_SETMASK, 0xFF17A094, 0xCA8FDC10) = 0

/102: lwp_unpark(102, 1) = 0

/102: setcontext(0xCA8FDC20)

/102: lwp_mutex_lock(0x000566F0) = 0

/102: lwp_cond_broadcast(0x00056708) = 0

/102: lwp_mutex_wakeup(0x000566F0) = 0

/102: lwp_mutex_lock(0x00056780) = 0

/102: Incurred fault #6, FLTBOUNDS %pc = 0xF9C4DC24

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: Received signal #11, SIGSEGV [caught]

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: sigprocmask(SIG_SETMASK, 0xCA8FDE5C, 0x00000000) = 0

/102: sigprocmask(SIG_SETMASK, 0xFF17A094, 0xCA8FDC10) = 0

/102: lwp_unpark(102, 1) = 0

/102: setcontext(0xCA8FDC20)

/102: lwp_mutex_lock(0x000566F0) = 0

/102: lwp_cond_broadcast(0x00056708) = 0

/102: lwp_mutex_wakeup(0x000566F0) = 0

/102: lwp_mutex_lock(0x00056780) = 0

/102: Incurred fault #6, FLTBOUNDS %pc = 0xF9C4DC24

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: Received signal #11, SIGSEGV [caught]

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: sigprocmask(SIG_SETMASK, 0xCA8FDE5C, 0x00000000) = 0

/102: sigprocmask(SIG_SETMASK, 0xFF17A094, 0xCA8FDC10) = 0

/102: lwp_unpark(102, 1) = 0

/102: setcontext(0xCA8FDC20)

/102: lwp_mutex_lock(0x000566F0) = 0

/102: lwp_cond_broadcast(0x00056708) = 0

/102: lwp_mutex_wakeup(0x000566F0) = 0

/102: lwp_mutex_lock(0x00056780) = 0

/102: Incurred fault #6, FLTBOUNDS %pc = 0xF9C4DC24

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: Received signal #11, SIGSEGV [caught]

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: sigprocmask(SIG_SETMASK, 0xCA8FDE5C, 0x00000000) = 0

/102: sigprocmask(SIG_SETMASK, 0xFF17A094, 0xCA8FDC10) = 0

/102: lwp_unpark(102, 1) = 0

/102: setcontext(0xCA8FDC20)

/102: lwp_mutex_lock(0x000566F0) = 0

/102: lwp_cond_broadcast(0x00056708) = 0

/102: lwp_mutex_wakeup(0x000566F0) = 0

/102: lwp_mutex_lock(0x00056780) = 0

/102: lwp_mutex_wakeup(0x00056780) = 0

/102: Incurred fault #6, FLTBOUNDS %pc = 0xF9C4DC24

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: Received signal #11, SIGSEGV [caught]

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: sigprocmask(SIG_SETMASK, 0xCA8FDE5C, 0x00000000) = 0

/102: sigprocmask(SIG_SETMASK, 0xFF17A094, 0xCA8FDC10) = 0

/102: lwp_unpark(102, 1) = 0

/102: setcontext(0xCA8FDC20)

/102: lwp_mutex_lock(0x000566F0) = 0

/102: lwp_cond_broadcast(0x00056708) = 0

/102: lwp_mutex_wakeup(0x000566F0) = 0

/102: lwp_mutex_lock(0x00056780) = 0

/102: lwp_mutex_wakeup(0x00056780) = 0

/102: Incurred fault #6, FLTBOUNDS %pc = 0xF9C4DC24

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: Received signal #11, SIGSEGV [caught]

/102: siginfo: SIGSEGV SEGV_ACCERR addr=0xFF0F0000

/102: sigprocmask(SIG_SETMASK, 0xCA8FDE5C, 0x00000000) = 0

/102: sigprocmask(SIG_SETMASK, 0xFF17A094, 0xCA8FDC10) = 0

/102: lwp_unpark(102, 1) = 0

/102: setcontext(0xCA8FDC20)

/102: lwp_mutex_lock(0x000566F0) = 0

/102: lwp_cond_broadcast(0x00056708) = 0

/102: lwp_mutex_wakeup(0x000566F0) = 0

/102: lwp_mutex_lock(0x00056780) = 0

/102: Received signal #13, SIGPIPE [ignored]

/102: Received signal #13, SIGPIPE [ignored]

/102: Received signal #13, SIGPIPE [ignored]

Can someone help me debug this? Or else please point me what shall I do next to debug this issue. All that I can get it that the process it accessing memory address out of its address space.

[5038 byte] By [Prashant_Vermaa] at [2007-11-27 4:44:48]
# 1
Use jstack utility to view a complete java trace. jstack <pid>
mmainardia at 2007-7-12 9:56:56 > top of Java-index,Java HotSpot Virtual Machine,Specifications...