OutOfMemory Error in Tomcat

K

kaicallguy

I setup a tomcat server in win server2003.
My config. :
-jdk1.5.0_12
-Tomcat5.0.28
-struts
-hibernate3
-mssql2000
-pc memory 2G
-Xmx = 1024M

I checked the program that all session are close. I used "-Xincgc" for
force processing garbage collection but the memory usage increases
continuously. I also checked the full thread dump log but i can't find
any problem.
Tomcat hangs when memory usage exceed 1024M.
Anyone can help you? ¸U¤À·PÁÂ



The full thread dump :

Full thread dump Java HotSpot(TM) Server VM (1.5.0_06-b05 mixed mode):

"TP-Processor20" daemon prio=6 tid=0x49dc4408 nid=0x167c runnable
[0x4e34f000..0
x4e34fd1c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x2d7dabf8> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor19" daemon prio=6 tid=0x49b05630 nid=0x12fc in
Object.wait() [0x4e3
0f000..0x4e30fd9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x3120d690> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x3120d690> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor18" daemon prio=6 tid=0x49841608 nid=0xfbc in
Object.wait() [0x4e2c
f000..0x4e2cfc9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x3120d6b0> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x3120d6b0> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor17" daemon prio=6 tid=0x493d5ef8 nid=0x11a4 in
Object.wait() [0x4e2
8f000..0x4e28fa1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x3120d6d0> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x3120d6d0> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor16" daemon prio=6 tid=0x4b918008 nid=0xc84 runnable
[0x4e24f000..0x
4e24fb9c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x0cfe8fb0> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor15" daemon prio=6 tid=0x4a02ce80 nid=0x2f4 runnable
[0x4e20f000..0x
4e20fc1c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x0d000680> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor14" daemon prio=6 tid=0x49f25a48 nid=0x170 runnable
[0x4e1cf000..0x
4e1cfc9c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x12ef6388> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor13" daemon prio=6 tid=0x49fa4c68 nid=0xe90 runnable
[0x4e18f000..0x
4e18fd1c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x23c70a68> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor12" daemon prio=6 tid=0x4a469d68 nid=0x350 runnable
[0x4e14f000..0x
4e14fd9c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x1350c7b8> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor11" daemon prio=6 tid=0x4a469be0 nid=0xcf8 runnable
[0x4e10f000..0x
4e10fa1c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x23d329f8> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor10" daemon prio=6 tid=0x4a4a14f0 nid=0xd00 runnable
[0x4e0cf000..0x
4e0cfa9c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x0dfb27c0> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor9" daemon prio=6 tid=0x4a43fd18 nid=0x1d4 runnable
[0x4e08f000..0x4
e08fb1c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x257e3e50> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor8" daemon prio=6 tid=0x4a2a06a8 nid=0x100 runnable
[0x4e04f000..0x4
e04fc9c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x0e5f21a0> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor7" daemon prio=6 tid=0x49a41008 nid=0xad8 runnable
[0x4e00f000..0x4
e00fd1c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x16d67680> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor6" daemon prio=6 tid=0x49919e18 nid=0xc58 runnable
[0x4ddbf000..0x4
ddbfc1c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x37fbf7e8> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor5" daemon prio=6 tid=0x49412008 nid=0xe30 in
Object.wait() [0x4dd7f
000..0x4dd7fd9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x09b79e88> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x09b79e88> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"Store com.manning.hq.ch03.Event Expiry Thread" daemon prio=6
tid=0x4c51ab80 nid
=0xa3c waiting on condition [0x4de6f000..0x4de6fa9c]
at java.lang.Thread.sleep(Native Method)
at
net.sf.ehcache.store.DiskStore.expiryThreadMain(DiskStore.java:641)
at net.sf.ehcache.store.DiskStore.access$700(DiskStore.java:
89)
at net.sf.ehcache.store.DiskStore
$ExpiryThread.run(DiskStore.java:772)

"Store com.manning.hq.ch03.Event Spool Thread" daemon prio=6
tid=0x49d42c40 nid=
0xc90 in Object.wait() [0x4de2f000..0x4de2fb1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x070ed3a0> (a net.sf.ehcache.store.DiskStore)
at java.lang.Object.wait(Object.java:474)
at
net.sf.ehcache.store.DiskStore.spoolThreadMain(DiskStore.java:476)
- locked <0x070ed3a0> (a net.sf.ehcache.store.DiskStore)
at net.sf.ehcache.store.DiskStore.access$600(DiskStore.java:
89)
at net.sf.ehcache.store.DiskStore
$SpoolThread.run(DiskStore.java:755)

"TP-Monitor" daemon prio=6 tid=0x4aed2190 nid=0xe64 in Object.wait()
[0x4dc4f000
...0x4dc4fb9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x070cd9d8> (a
org.apache.tomcat.util.threads.ThreadPool$M
onitorRunnable)
at org.apache.tomcat.util.threads.ThreadPool
$MonitorRunnable.run(ThreadP
ool.java:559)
- locked <0x070cd9d8> (a
org.apache.tomcat.util.threads.ThreadPool$Monit
orRunnable)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor4" daemon prio=6 tid=0x4aed2008 nid=0xe80 runnable
[0x4dc0f000..0x4
dc0fd1c]
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked <0x06ef06e0> (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:295)
at
org.apache.jk.common.ChannelSocket.acceptConnections(ChannelSocket.ja
va:638)
at
org.apache.jk.common.SocketAcceptor.runIt(ChannelSocket.java:847)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor3" daemon prio=6 tid=0x4a97bd40 nid=0x7f0 runnable
[0x4dbcf000..0x4
dbcfc9c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x18d44730> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor2" daemon prio=6 tid=0x4a9f7400 nid=0x638 runnable
[0x4b4af000..0x4
b4afd9c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x340d7f60> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"TP-Processor1" daemon prio=6 tid=0x4a230e60 nid=0xc94 runnable
[0x4b46f000..0x4
b46fc1c]
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:
218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:
256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:
313)
- locked <0x0d0bfc48> (a java.io.BufferedInputStream)
at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:
598)
at
org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:535)
at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.ja
va:663)
at
org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Monitor" prio=6 tid=0x4a350d98 nid=0xaac in Object.wait()
[0x4db8f000
...0x4db8fb1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d95e8> (a
org.apache.tomcat.util.threads.ThreadPool$M
onitorRunnable)
at org.apache.tomcat.util.threads.ThreadPool
$MonitorRunnable.run(ThreadP
ool.java:559)
- locked <0x071d95e8> (a
org.apache.tomcat.util.threads.ThreadPool$Monit
orRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor25" daemon prio=6 tid=0x4a546a90 nid=0xc8c
runnable [0x4db4f
000..0x4db4fa1c]
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked <0x06a64ee8> (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(De
faultServerSocketFactory.java:60)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.acceptSocket(PoolTcpEndpoi
nt.java:368)
at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java
:549)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:683)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor24" daemon prio=6 tid=0x4a930dc0 nid=0xe4 in
Object.wait() [
0x4db0f000..0x4db0fa9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1178> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1178> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor23" daemon prio=6 tid=0x4a69c718 nid=0xaf0 in
Object.wait()
[0x4dacf000..0x4dacfa9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1198> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1198> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor22" daemon prio=6 tid=0x49c4ddd0 nid=0xf40 in
Object.wait()
[0x4da8f000..0x4da8fa1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d11b8> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d11b8> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor21" daemon prio=6 tid=0x49fd2808 nid=0xd44 in
Object.wait()
[0x4da4f000..0x4da4fb1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d11d8> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d11d8> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor20" daemon prio=6 tid=0x4a016808 nid=0xef4 in
Object.wait()
[0x4da0f000..0x4da0fd9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1238> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1238> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor19" daemon prio=6 tid=0x4a166598 nid=0x490 in
Object.wait()
[0x4d9cf000..0x4d9cfb9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1298> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1298> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor18" daemon prio=6 tid=0x4a2b6b00 nid=0x864 in
Object.wait()
[0x4d98f000..0x4d98fd1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d12f8> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d12f8> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor17" daemon prio=6 tid=0x4a5cfe10 nid=0xdc0 in
Object.wait()
[0x4d94f000..0x4d94fc1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1358> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1358> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor16" daemon prio=6 tid=0x4aa2fe50 nid=0x594 in
Object.wait()
[0x4d90f000..0x4d90fb9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d13b8> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d13b8> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor15" daemon prio=6 tid=0x4a28f7d8 nid=0xd48 in
Object.wait()
[0x4d8cf000..0x4d8cfc9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1418> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1418> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor14" daemon prio=6 tid=0x4a45e428 nid=0x1f8 in
Object.wait()
[0x4d88f000..0x4d88fd1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1478> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1478> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor13" daemon prio=6 tid=0x4a69c590 nid=0x954 in
Object.wait()
[0x4d84f000..0x4d84fd1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d14d8> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d14d8> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor12" daemon prio=6 tid=0x4a69c408 nid=0xfc0 in
Object.wait()
[0x4d80f000..0x4d80fd9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1538> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1538> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor11" daemon prio=6 tid=0x4a530590 nid=0xee4 in
Object.wait()
[0x4d7cf000..0x4d7cfd9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1598> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1598> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor10" daemon prio=6 tid=0x4a530408 nid=0x91c in
Object.wait()
[0x4d78f000..0x4d78fa1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d15f8> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d15f8> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor9" daemon prio=6 tid=0x4a21dee8 nid=0xe9c in
Object.wait() [
0x4d74f000..0x4d74fa9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1658> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1658> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor8" daemon prio=6 tid=0x4a78f408 nid=0x9bc in
Object.wait() [
0x4b6df000..0x4b6dfc9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d16b8> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d16b8> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor7" daemon prio=6 tid=0x4a8c6e48 nid=0xc00 in
Object.wait() [
0x4b69f000..0x4b69fa1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071d1718> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071d1718> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor6" daemon prio=6 tid=0x4ac1c408 nid=0x3cc in
Object.wait() [
0x4b65f000..0x4b65fc1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071e7708> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071e7708> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor5" daemon prio=6 tid=0x498a1d10 nid=0xba8 in
Object.wait() [
0x4b61f000..0x4b61fb1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071e7768> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071e7768> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor4" daemon prio=6 tid=0x4b280da0 nid=0xe5c in
Object.wait() [
0x4b5df000..0x4b5dfa9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071e77c8> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071e77c8> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor3" daemon prio=6 tid=0x4a31b568 nid=0xb88 in
Object.wait() [
0x4b59f000..0x4b59fb9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071e7828> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071e7828> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor2" daemon prio=6 tid=0x4a928188 nid=0x81c in
Object.wait() [
0x4b55f000..0x4b55fc9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071e7888> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071e7888> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"http-8080-Processor1" daemon prio=6 tid=0x4ab22d40 nid=0xcf4 in
Object.wait() [
0x4b51f000..0x4b51fc1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x071e78e8> (a
org.apache.tomcat.util.threads.ThreadPool$C
ontrolRunnable)
at java.lang.Object.wait(Object.java:474)
at org.apache.tomcat.util.threads.ThreadPool
$ControlRunnable.run(ThreadP
ool.java:655)
- locked <0x071e78e8> (a
org.apache.tomcat.util.threads.ThreadPool$Contr
olRunnable)
at java.lang.Thread.run(Thread.java:595)

"ContainerBackgroundProcessor[StandardEngine[Catalina]]" daemon prio=6
tid=0x4ad
10878 nid=0xb24 waiting on condition [0x4b42f000..0x4b42fb1c]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.core.ContainerBase
$ContainerBackgroundProcessor.r
un(ContainerBase.java:1597)
at java.lang.Thread.run(Thread.java:595)

"Low Memory Detector" daemon prio=6 tid=0x4930b388 nid=0xb68 runnable
[0x0000000
0..0x00000000]

"CompilerThread1" daemon prio=10 tid=0x49309fe0 nid=0xc28 waiting on
condition [
0x00000000..0x496cf510]

"CompilerThread0" daemon prio=10 tid=0x49309210 nid=0x154 waiting on
condition [
0x00000000..0x4968f584]

"AdapterThread" daemon prio=10 tid=0x49308360 nid=0xa38 waiting on
condition [0x
00000000..0x00000000]

"Signal Dispatcher" daemon prio=10 tid=0x49307440 nid=0x99c waiting on
condition
[0x00000000..0x00000000]

"Surrogate Locker Thread (CMS)" daemon prio=6 tid=0x49306978 nid=0xe70
waiting o
n condition [0x00000000..0x495cfc10]

"Finalizer" daemon prio=8 tid=0x492fdf70 nid=0xf3c in Object.wait()
[0x4958f000.
..0x4958fb1c]
at java.lang.Object.wait(Native Method)
- waiting on <0x069f0428> (a java.lang.ref.ReferenceQueue
$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:
116)
- locked <0x069f0428> (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=10 tid=0x492fd2d0 nid=0x938 in
Object.wait() [0x
4954f000..0x4954fb9c]
at java.lang.Object.wait(Native Method)
- waiting on <0x069f3a30> (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 <0x069f3a30> (a java.lang.ref.Reference$Lock)

"main" prio=6 tid=0x000370e8 nid=0xf04 runnable
[0x0007f000..0x0007fc04]
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
- locked <0x071e4808> (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:513
)
at org.apache.catalina.startup.Catalina.await(Catalina.java:
619)
at org.apache.catalina.startup.Catalina.start(Catalina.java:
579)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:
287)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:
425)

"VM Thread" prio=10 tid=0x00035c78 nid=0x37c runnable

"Gang worker#0 (Parallel GC Threads)" prio=10 tid=0x008a5ec0 nid=0x79c
runnable


"Gang worker#1 (Parallel GC Threads)" prio=10 tid=0x008a6908 nid=0xf9c
runnable


"Concurrent Mark-Sweep GC Thread#0" prio=10 tid=0x008d4bf8 nid=0x794
runnable

"VM Periodic Task Thread" prio=10 tid=0x4930c6a0 nid=0x514 waiting on
condition
 
J

Juha Laiho

(e-mail address removed) said:
I setup a tomcat server in win server2003.
My config. :
-jdk1.5.0_12
-Tomcat5.0.28
-struts
-hibernate3
-mssql2000
-pc memory 2G
-Xmx = 1024M

I checked the program that all session are close. I used "-Xincgc" for
force processing garbage collection but the memory usage increases
continuously. I also checked the full thread dump log but i can't find
any problem.

It looks like something leaves references to session data for closed
sessions - so that the data cannot be collected.

Look for places where you use aggregates (arrays, various collections),
and try to get a way to monitor their sizes. Heap analysis tools could
also tell the amounts of object instances, which might help in pinpointing
the problem.

Of commercial tools, I've succesfully solved similar problems with
YourKit - see http://yourkit.com/ . YourKit is a "fancy heap analysis
tool" (ok, it does other things as well, but for my use it has been
just that), which lets you drill into memory usage of a Java program
(standalone as well as server-based).
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,969
Messages
2,570,161
Members
46,709
Latest member
AustinMudi

Latest Threads

Top