What is the problem in my Thread Dump's output?

Dear all,

Below is my Thread Dump output. I can not figure out what and where is the problem of this Thread Dump's output. Could some one please give me some hints?

Thanks alot

Tu

-Thread Dump's Output--

Full thread dump Java HotSpot(TM) Client VM (1.5.0_07-b03 mixed mode, sharing):

"TP-Monitor" daemon prio=1 tid=0xb0b14490 nid=0xfaa in Object.wait()

[0xb08fe000..0xb08fee40]

at java.lang.Object.wait(Native Method)

- waiting on <0x89433f70> (a

org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable)

at org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable.run(ThreadPool.java:559)

- locked <0x89433f70> (a

org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable)

at java.lang.Thread.run(Thread.java:595)

"TP-Processor4" daemon prio=1 tid=0xb0b13730 nid=0xfa9 runnable

[0xb097e000..0xb097efc0]

at java.net.PlainSocketImpl.socketAccept(Native Method)

at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)

- locked <0x89438110> (a java.net.SocksSocketImpl)

at java.net.ServerSocket.implAccept(ServerSocket.java:450)

at java.net.ServerSocket.accept(ServerSocket.java:421)

at org.apache.jk.common.ChannelSocket.accept(ChannelSocket.java:293)

at org.apache.jk.common.ChannelSocket.acceptConnections(ChannelSocket.java:647)

at org.apache.jk.common.ChannelSocket$SocketAcceptor.runIt(ChannelSocket.java:857)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)

at java.lang.Thread.run(Thread.java:595)

"TP-Processor3" daemon prio=1 tid=0xb0b0f6b8 nid=0xfa8 in

Object.wait() [0xb09fe000..0xb09fef40]

at java.lang.Object.wait(Native Method)

- waiting on <0x89434250> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89434250> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"TP-Processor2" daemon prio=1 tid=0xb0b0fec8 nid=0xfa7 in

Object.wait() [0xb0a7e000..0xb0a7f0c0]

at java.lang.Object.wait(Native Method)

- waiting on <0x894342e8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x894342e8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"TP-Processor1" daemon prio=1 tid=0xb0b14978 nid=0xfa6 in

Object.wait() [0xb0afe000..0xb0aff040]

at java.lang.Object.wait(Native Method)

- waiting on <0x89434380> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89434380> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Monitor" prio=1 tid=0x08609b18 nid=0xfa5 in Object.wait()

[0xb0cc9000..0xb0cc91c0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378950> (a

org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable)

at org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable.run(ThreadPool.java:559)

- locked <0x89378950> (a

org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor25" daemon prio=1 tid=0x08608ce0 nid=0xfa4

runnable [0xb0d48000..0xb0d49140]

at java.net.PlainSocketImpl.socketAccept(Native Method)

at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)

- locked <0x89010c58> (a java.net.SocksSocketImpl)

at java.net.ServerSocket.implAccept(ServerSocket.java:450)

at java.net.ServerSocket.accept(ServerSocket.java:421)

at org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:60)

at org.apache.tomcat.util.net.PoolTcpEndpoint.acceptSocket(PoolTcpEndpoint.java:407)

at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:70)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor24" daemon prio=1 tid=0x086085f8 nid=0xfa3 in

Object.wait() [0xb0dc8000..0xb0dc8ec0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378ab8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89378ab8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor23" daemon prio=1 tid=0x08606dd0 nid=0xfa2 in

Object.wait() [0xb0e48000..0xb0e48e40]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378b50> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89378b50> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor22" daemon prio=1 tid=0x08605ed0 nid=0xfa1 in

Object.wait() [0xb0ec8000..0xb0ec8fc0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378be8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89378be8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor21" daemon prio=1 tid=0x08604fd0 nid=0xfa0 in

Object.wait() [0xb0f48000..0xb0f48f40]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378c80> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89378c80> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor20" daemon prio=1 tid=0x086040f0 nid=0xf9f in

Object.wait() [0xb0fc8000..0xb0fc90c0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378d18> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89378d18> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor19" daemon prio=1 tid=0x08432538 nid=0xf9e in

Object.wait() [0xb1048000..0xb1049040]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378db0> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89378db0> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor18" daemon prio=1 tid=0x08431638 nid=0xf9d in

Object.wait() [0xb10c9000..0xb10c91c0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378e48> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89378e48> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor17" daemon prio=1 tid=0x08430738 nid=0xf9c in

Object.wait() [0xb1148000..0xb1149140]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378ee0> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89378ee0> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor16" daemon prio=1 tid=0x0842f838 nid=0xf9b in

Object.wait() [0xb11c8000..0xb11c8ec0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89378f78> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89378f78> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor15" daemon prio=1 tid=0x0842e938 nid=0xf9a in

Object.wait() [0xb1248000..0xb1248e40]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379010> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379010> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor14" daemon prio=1 tid=0x0842da38 nid=0xf99 in

Object.wait() [0xb12c8000..0xb12c8fc0]

at java.lang.Object.wait(Native Method)

- waiting on <0x893790a8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x893790a8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor13" daemon prio=1 tid=0x0842cb38 nid=0xf98 in

Object.wait() [0xb1348000..0xb1348f40]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379140> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379140> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor12" daemon prio=1 tid=0x0842bc50 nid=0xf97 in

Object.wait() [0xb13c8000..0xb13c90c0]

at java.lang.Object.wait(Native Method)

- waiting on <0x893791d8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x893791d8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor11" daemon prio=1 tid=0x084f75d0 nid=0xf96 in

Object.wait() [0xb1448000..0xb1449040]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379270> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379270> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor10" daemon prio=1 tid=0x084f66d0 nid=0xf95 in

Object.wait() [0xb14c9000..0xb14c91c0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379308> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379308> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor9" daemon prio=1 tid=0x084f57d0 nid=0xf94 in

Object.wait() [0xb1548000..0xb1549140]

at java.lang.Object.wait(Native Method)

- waiting on <0x893793a0> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x893793a0> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor8" daemon prio=1 tid=0x08488970 nid=0xf93 in

Object.wait() [0xb15c8000..0xb15c8ec0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379438> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379438> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor7" daemon prio=1 tid=0x08487a70 nid=0xf92 in

Object.wait() [0xb1648000..0xb1648e40]

at java.lang.Object.wait(Native Method)

- waiting on <0x893794d0> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x893794d0> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor6" daemon prio=1 tid=0x08486b90 nid=0xf91 in

Object.wait() [0xb16c8000..0xb16c8fc0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379568> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379568> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor5" daemon prio=1 tid=0x084e3e30 nid=0xf90 in

Object.wait() [0xb1748000..0xb1748f40]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379600> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379600> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor4" daemon prio=1 tid=0x084e2f90 nid=0xf8f in

Object.wait() [0xb17c8000..0xb17c90c0]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379698> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379698> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor3" daemon prio=1 tid=0x084e2158 nid=0xf8e in

Object.wait() [0xb1848000..0xb1849040]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379730> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379730> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor2" daemon prio=1 tid=0x085e74d0 nid=0xf8d in

Object.wait() [0xb18c9000..0xb18c91c0]

at java.lang.Object.wait(Native Method)

- waiting on <0x893797c8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x893797c8> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor1" daemon prio=1 tid=0x085e6638 nid=0xf8c in

Object.wait() [0xb1948000..0xb1949140]

at java.lang.Object.wait(Native Method)

- waiting on <0x89379860> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Object.wait(Object.java:474)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)

- locked <0x89379860> (a

org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)

at java.lang.Thread.run(Thread.java:595)

"ContainerBackgroundProcessor[StandardEngine[Catalina]]" daemon prio=1

tid=0x083719f8 nid=0xf8b waiting on condition [0xb1a85000..0xb1a85ec0]

at java.lang.Thread.sleep(Native Method)

at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1547)

at java.lang.Thread.run(Thread.java:595)

"Low Memory Detector" daemon prio=1 tid=0x080a44f8 nid=0xf7f runnable

[0x00000000..0x00000000]

"CompilerThread0" daemon prio=1 tid=0x080a2f98 nid=0xf7e waiting on

condition [0x00000000..0xb21b2928]

"Signal Dispatcher" daemon prio=1 tid=0x080a2068 nid=0xf7d waiting on

condition [0x00000000..0x00000000]

"Finalizer" daemon prio=1 tid=0x0809c540 nid=0xf7c in Object.wait()

[0xb24b2000..0xb24b3040]

at java.lang.Object.wait(Native Method)

- waiting on <0x88f01de0> (a java.lang.ref.ReferenceQueue$Lock)

at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)

- locked <0x88f01de0> (a java.lang.ref.ReferenceQueue$Lock)

at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)

at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=1 tid=0x0809a6b0 nid=0xf7b in

Object.wait() [0xb2533000..0xb25331c0]

at java.lang.Object.wait(Native Method)

- waiting on <0x88f01e60> (a java.lang.ref.Reference$Lock)

at java.lang.Object.wait(Object.java:474)

at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)

- locked <0x88f01e60> (a java.lang.ref.Reference$Lock)

"main" prio=1 tid=0x0805d1c8 nid=0xf79 runnable [0xbfbd9000..0xbfbda4f8]

at java.net.PlainSocketImpl.socketAccept(Native Method)

at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)

- locked <0x8946f690> (a java.net.SocksSocketImpl)

at java.net.ServerSocket.implAccept(ServerSocket.java:450)

at java.net.ServerSocket.accept(ServerSocket.java:421)

at org.apache.catalina.core.StandardServer.await(StandardServer.java:388)

at org.apache.catalina.startup.Catalina.await(Catalina.java:615)

at org.apache.catalina.startup.Catalina.start(Catalina.java:575)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:585)

at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)

at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)

"VM Thread" prio=1 tid=0x08097b58 nid=0xf7a runnable

"VM Periodic Task Thread" prio=1 tid=0x080a5998 nid=0xf80 waiting on condition

[21096 byte] By [Kimmintua] at [2007-10-3 6:41:58]
# 1

There is no 'problem in my Thread Dump's output'.

There might be an application problem that the thread dump output might help you to solve. If you tell us what the application problem is you might possibly get some assistance.

There are lot of blocked threads, two of them in ServerSocket.accept(), the rest of them seem to be thread-pool threads waiting for something to do.

ejpa at 2007-7-15 1:31:08 > top of Java-index,Core,Core APIs...
# 2

Thanks alot for your reply. It is a web application using java and tomcat server. And the problem is that sometime when I click on a button or a link than the CPU goes to 100% and it hangs but normally it works smoothly without any problem. I do not really know where the problem is. Someone told me to use ThreadDump to test my application for this kind of problem. By the way, do you know how I can write a class runs in the background of the server and always test if the CPU goes to 100% and then stop and restart the tomcat server to make sure that the CPU will not burn when it goes to 100% long enough. Thanks alot.

Kimmintua at 2007-7-15 1:31:08 > top of Java-index,Core,Core APIs...
# 3
You need to get a thread dump while the condition is happening, or you need to make better observations - is there a particular button, or form, or part of the application, that triggers the behaviour, or does it really just happen anywhere any time?The CPU won't burn.
ejpa at 2007-7-15 1:31:09 > top of Java-index,Core,Core APIs...
# 4

> Thanks alot for your reply. It is a web application

> using java and tomcat server. And the problem is that

> sometime when I click on a button or a link than the

> CPU goes to 100% and it hangs but normally it works

> smoothly without any problem.

This often indicates a busy retry loop somewhere. You need to acquire the thread dump when the problem occurs, but be warned that depending on the problem it may not be possible to obtain a Java-level thread dump. In that case you need to try and take an OS level thread dump - eg using pstack on solaris/linux (and there's some win32 tool as well if I recall correctly).

davidholmesa at 2007-7-15 1:31:09 > top of Java-index,Core,Core APIs...