Are you running out of db connections?

Add elements to your resource for the database connection to recover abandoned connections and to log them. Then see if any show in the logs. Poor way of profiling. If they do and your app continues to run you were running out of db connections. Note: This is only patch and you will need to fix your code.

Doug


----- Original Message ----- From: "Motokazu Ishikawa" <[EMAIL PROTECTED]>
To: <tomcat-user@jakarta.apache.org>
Sent: Wednesday, June 01, 2005 11:01 PM
Subject: Suddenly, can't access a tomcat


Hello, all.

Please help me resolve the following problem.

I developed web application in which an user can run external python scripts and
outputs of these scripts are stored in MySQL. Stored data can be reviewed.

My web application runs normally for a day or two. But suddenly, tomcat becomes
inaccessible. this happens many times, but I don't know why.

When inaccessible, I confirmed the following,
 JVM are alive: confirmed by ps command.
 port(8080) is open:  confirmed by nmap command.

And when inaccessible, I throw some HTTP requests through telnet command like this.
$ telnet localhost 8080
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
GET / HTTP/1.1           (<- I typed this)

But any response are returned. (off course, response are returned when tomcat
runs normally)

** related modules etc.
Tomcat:   4.1.31
OS:       Linux 2.4.21-4 (Red Hat Enterprise Linux 3.2.4-20)
JAVA:     j2sdk1.4.2
Velocity: velocity-dep-1.4.jar, velocity-tools-1.1.jar
mysql:    mysql-connector-java-3.0.16-ga-bin.jar
DAO: s2dao (s2-dao-1.0.0.jar, s2-extension-2.0.12.jar, s2-framework-2.0.12.jar)

** the following thread dump is taken when the tomcat are inaccessible.

Full thread dump Java HotSpot(TM) Server VM (1.4.2_06-b03 mixed mode):

"http-8080-Processor30" daemon prio=1 tid=0x08ac5e38 nid=0x5878 in Object.wait() [904d9000..904d9854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4fc1cd78> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Object.wait(Object.java:429)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:655) - locked <0x4fc1cd78> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Thread.run(Thread.java:534)

"http-8080-Processor29" daemon prio=1 tid=0x098e6438 nid=0x5878 in Object.wait() [94131000..94131854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4fc1cdf8> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Object.wait(Object.java:429)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:655) - locked <0x4fc1cdf8> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Thread.run(Thread.java:534)

"http-8080-Processor28" daemon prio=1 tid=0x098e6260 nid=0x5878 runnable [903d7000..903d7854]
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:353)
- locked <0x4cca0070> (a java.net.PlainSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:448)
at java.net.ServerSocket.accept(ServerSocket.java:419)
at org.apache.tomcat.util.net.DefaultServerSocketFactory.acceptSocket(DefaultServerSocketFactory.java:60) at org.apache.tomcat.util.net.PoolTcpEndpoint.acceptSocket(PoolTcpEndpoint.java:368) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:549) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)

"http-8080-Processor27" daemon prio=1 tid=0x09eeb800 nid=0x5878 in Object.wait() [90458000..90458854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4fc1cef8> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Object.wait(Object.java:429)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:655) - locked <0x4fc1cef8> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Thread.run(Thread.java:534)

"http-8080-Processor26" daemon prio=1 tid=0x0b2f6558 nid=0x5878 in Object.wait() [93daa000..93daa854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4fc1cf78> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Object.wait(Object.java:429)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:655) - locked <0x4fc1cf78> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Thread.run(Thread.java:534)

"http-8080-Processor21" daemon prio=1 tid=0x91bf63a8 nid=0x5878 in Object.wait() [940b0000..940b0854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4f82f108> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Object.wait(Object.java:429)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:655) - locked <0x4f82f108> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Thread.run(Thread.java:534)

"Thread-42" daemon prio=1 tid=0x8c53f560 nid=0x5878 in Object.wait() [92484000..92484854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4e5051b0> (a java.lang.UNIXProcess)
at java.lang.Object.wait(Object.java:429)
at java.lang.UNIXProcess.waitFor(UNIXProcess.java:160)
- locked <0x4e5051b0> (a java.lang.UNIXProcess)
at jp.biointegra.mssystem.util.ChromatoDivider.run(ChromatoDivider.java:213)

"Thread-36" daemon prio=1 tid=0x8e675858 nid=0x5878 in Object.wait() [8d860000..8d860854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4e468110> (a java.lang.UNIXProcess)
at java.lang.Object.wait(Object.java:429)
at java.lang.UNIXProcess.waitFor(UNIXProcess.java:160)
- locked <0x4e468110> (a java.lang.UNIXProcess)
at jp.biointegra.mssystem.util.Integrater.run(Integrater.java:142)

"Thread-32" daemon prio=1 tid=0x8c6f4520 nid=0x5878 in Object.wait() [92280000..92280854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4e361358> (a java.lang.UNIXProcess)
at java.lang.Object.wait(Object.java:429)
at java.lang.UNIXProcess.waitFor(UNIXProcess.java:160)
- locked <0x4e361358> (a java.lang.UNIXProcess)
at jp.biointegra.mssystem.util.ChromatoDivider.run(ChromatoDivider.java:213)

"Java2D Disposer" daemon prio=1 tid=0x8aad3960 nid=0x5878 in Object.wait() [8ed80000..8ed80854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4df49dc8> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
- locked <0x4df49dc8> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
at sun.java2d.Disposer.run(Disposer.java:100)
at java.lang.Thread.run(Thread.java:534)

"Thread-14" daemon prio=1 tid=0x084dd170 nid=0x5878 in Object.wait() [8b397000..8b397854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4d579d80> (a org.seasar.framework.util.SLinkedList)
at java.lang.Object.wait(Object.java:429)
at org.seasar.extension.timer.TimeoutManager.run(TimeoutManager.java:40)
- locked <0x4d579d80> (a org.seasar.framework.util.SLinkedList)
at java.lang.Thread.run(Thread.java:534)

"TP-Monitor" daemon prio=1 tid=0x085b10e8 nid=0x5878 in Object.wait() [8dd56000..8dd56854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4d579dd8> (a org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable) at org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable.run(ThreadPool.java:559) - locked <0x4d579dd8> (a org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable)
at java.lang.Thread.run(Thread.java:534)

"TP-Processor5" daemon prio=1 tid=0x085b0598 nid=0x5878 runnable [8dcd5000..8dcd5854]
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:353)
- locked <0x4d579e60> (a java.net.PlainSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:448)
at java.net.ServerSocket.accept(ServerSocket.java:419)
at org.apache.jk.common.ChannelSocket.accept(ChannelSocket.java:295)
at org.apache.jk.common.ChannelSocket.acceptConnections(ChannelSocket.java:638)
at org.apache.jk.common.SocketAcceptor.runIt(ChannelSocket.java:847)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)

"TP-Processor4" daemon prio=1 tid=0x0822ad30 nid=0x5878 in Object.wait() [8dc54000..8dc54854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4d57a088> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Object.wait(Object.java:429)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:655) - locked <0x4d57a088> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Thread.run(Thread.java:534)

"TP-Processor3" daemon prio=1 tid=0x086b5aa0 nid=0x5878 in Object.wait() [8dbd3000..8dbd3854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4d57a108> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Object.wait(Object.java:429)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:655) - locked <0x4d57a108> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Thread.run(Thread.java:534)

"TP-Processor2" daemon prio=1 tid=0x0835d920 nid=0x5878 in Object.wait() [8db52000..8db52854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4d57a188> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Object.wait(Object.java:429)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:655) - locked <0x4d57a188> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Thread.run(Thread.java:534)

"TP-Processor1" daemon prio=1 tid=0x08417008 nid=0x5878 in Object.wait() [8dad1000..8dad1854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4d57a208> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Object.wait(Object.java:429)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:655) - locked <0x4d57a208> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
at java.lang.Thread.run(Thread.java:534)

"http-8080-Monitor" prio=1 tid=0x082aba08 nid=0x5878 in Object.wait() [8d9e3000..8d9e3854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4d57a270> (a org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable) at org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable.run(ThreadPool.java:559) - locked <0x4d57a270> (a org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable)
at java.lang.Thread.run(Thread.java:534)

"HostConfig[localhost]" daemon prio=1 tid=0x082ad678 nid=0x5878 waiting on condition [8c26d000..8c26d854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.startup.HostConfig.threadSleep(HostConfig.java:777)
at org.apache.catalina.startup.HostConfig.run(HostConfig.java:801)
at java.lang.Thread.run(Thread.java:534)

"StandardManager[/mssystem]" daemon prio=1 tid=0x0850d138 nid=0x5878 waiting on condition [8be49000..8be49854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:763) at org.apache.catalina.session.StandardManager.run(StandardManager.java:822)
at java.lang.Thread.run(Thread.java:534)

"StandardManager[/webdav]" daemon prio=1 tid=0x0856b340 nid=0x5878 waiting on condition [8bb01000..8bb01854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:763) at org.apache.catalina.session.StandardManager.run(StandardManager.java:822)
at java.lang.Thread.run(Thread.java:534)

"StandardManager[/tomcat-docs]" daemon prio=1 tid=0x087f9d58 nid=0x5878 waiting on condition [8ba80000..8ba80854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:763) at org.apache.catalina.session.StandardManager.run(StandardManager.java:822)
at java.lang.Thread.run(Thread.java:534)

"StandardManager[/examples]" daemon prio=1 tid=0x080f4ed8 nid=0x5878 waiting on condition [8b4aa000..8b4aa854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:763) at org.apache.catalina.session.StandardManager.run(StandardManager.java:822)
at java.lang.Thread.run(Thread.java:534)

"StandardManager[]" daemon prio=1 tid=0x085c20d0 nid=0x5878 waiting on condition [8b880000..8b880854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:763) at org.apache.catalina.session.StandardManager.run(StandardManager.java:822)
at java.lang.Thread.run(Thread.java:534)

"StandardManager[/manager]" daemon prio=1 tid=0x086e39b0 nid=0x5878 waiting on condition [8c380000..8c380854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:763) at org.apache.catalina.session.StandardManager.run(StandardManager.java:822)
at java.lang.Thread.run(Thread.java:534)

"StandardManager[/admin]" daemon prio=1 tid=0x08700000 nid=0x5878 waiting on condition [8c1ec000..8c1ec854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:763) at org.apache.catalina.session.StandardManager.run(StandardManager.java:822)
at java.lang.Thread.run(Thread.java:534)

"StandardManager[/MASS]" daemon prio=1 tid=0x8aec5aa0 nid=0x5878 waiting on condition [8bf62000..8bf62854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.session.StandardManager.threadSleep(StandardManager.java:763) at org.apache.catalina.session.StandardManager.run(StandardManager.java:822)
at java.lang.Thread.run(Thread.java:534)

"WebappLoader[/MASS]" daemon prio=1 tid=0x8ae4d870 nid=0x5878 waiting on condition [8b429000..8b429854]
at java.lang.Thread.sleep(Native Method)
at org.apache.catalina.loader.WebappLoader.threadSleep(WebappLoader.java:1161)
at org.apache.catalina.loader.WebappLoader.run(WebappLoader.java:1281)
at java.lang.Thread.run(Thread.java:534)

"Signal Dispatcher" daemon prio=1 tid=0x080caba0 nid=0x5878 waiting on condition [0..0]

"Finalizer" daemon prio=1 tid=0x080c67d0 nid=0x5878 in Object.wait() [414d4000..414d4854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4cca06d0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
- locked <0x4cca06d0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=1 tid=0x080c6440 nid=0x5878 in Object.wait() [41453000..41453854]
at java.lang.Object.wait(Native Method)
- waiting on <0x4cca03d0> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:429)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:115)
- locked <0x4cca03d0> (a java.lang.ref.Reference$Lock)

"main" prio=1 tid=0x0805b130 nid=0x5878 runnable [bfffa000..bfffb638]
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:353)
- locked <0x4d57ae38> (a java.net.PlainSocketImpl)
at java.net.ServerSocket.implAccept(ServerSocket.java:448)
at java.net.ServerSocket.accept(ServerSocket.java:419)
at org.apache.catalina.core.StandardServer.await(StandardServer.java:480)
at org.apache.catalina.startup.Catalina.start(Catalina.java:472)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:350)
at org.apache.catalina.startup.Catalina.process(Catalina.java:129)
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:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:156)

"VM Thread" prio=1 tid=0x080c59e0 nid=0x5878 runnable

"VM Periodic Task Thread" prio=1 tid=0x080cf058 nid=0x5878 waiting on condition
"Suspend Checker Thread" prio=1 tid=0x080ca200 nid=0x5878 runnable

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]






---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to