<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
  <title></title>
</head>
<body>
<small><font face="Helvetica, Arial, sans-serif">Dear all<br>
I experienced this kind of problem:<br>
<br>
At least once a week my OpenCMS-based web-site crashes, due to a
problem about threads. The message I can read on stdout is<br>
INFO: All threads are busy, waiting. Please increase maxThreads or
check the servlet status75 75<br>
<br>
Last time I had this inconvenient I dumped  all active threads, and I
could notice a lot of  traces like the ones I refer below.<br>
I could increase maxThreads, but I suppose I would only delay my
problems. The question seems to me to belong to database connections.<br>
<br>
My system configuration is Linux Red Hat 9.2, tomcat 4.1.18, opencms
5.0, jdk 142_01-b06, mysql 3.23.58<br>
<br>
Thanks, <br>
    Giuseppe</font></small><br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<small><font face="Courier New, Courier, monospace">"Thread-4410"
daemon prio=1 tid=0x08959250 nid=0x6546 waiting for monitor entry
[5dcb5000..5dcb5d98]<br>
    at java.sql.DriverManager.getConnection(DriverManager.java:187)<br>
    - waiting to lock <0x54eff978> (a java.lang.Class)<br>
    at
com.opencms.file.genericSql.CmsDbAccess.readUser(CmsDbAccess.java:10136)<br>
    at
com.opencms.file.genericSql.CmsResourceBroker.readUser(CmsResourceBroker.java:6478)<br>
    at
com.opencms.file.CmsRequestContext.init(CmsRequestContext.java:172)<br>
    at com.opencms.file.CmsObject.init(CmsObject.java:2200)<br>
    at com.opencms.core.OpenCms.initUser(OpenCms.java:896)<br>
    at
com.opencms.core.OpenCmsHttpServlet.initUser(OpenCmsHttpServlet.java:473)<br>
    at
com.opencms.core.OpenCmsHttpServlet.doGet(OpenCmsHttpServlet.java:304)<br>
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)<br>
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)<br>
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)<br>
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)<br>
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)<br>
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)<br>
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)<br>
    at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)<br>
    at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)<br>
    at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)<br>
    at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)<br>
    at java.lang.Thread.run(Thread.java:534)<br>
<br>
"Thread-4409" daemon prio=1 tid=0x08958698 nid=0x6546 waiting for
monitor entry [5dc35000..5dc35e18]<br>
    at java.sql.DriverManager.getConnection(DriverManager.java:187)<br>
    - waiting to lock <0x54eff978> (a java.lang.Class)<br>
    at
com.opencms.file.genericSql.CmsDbAccess.readUser(CmsDbAccess.java:10136)<br>
    at
com.opencms.file.genericSql.CmsResourceBroker.readUser(CmsResourceBroker.java:6478)<br>
    at
com.opencms.file.CmsRequestContext.init(CmsRequestContext.java:172)<br>
    at com.opencms.file.CmsObject.init(CmsObject.java:2200)<br>
    at com.opencms.core.OpenCms.initUser(OpenCms.java:896)<br>
    at
com.opencms.core.OpenCmsHttpServlet.initUser(OpenCmsHttpServlet.java:473)<br>
    at
com.opencms.core.OpenCmsHttpServlet.doGet(OpenCmsHttpServlet.java:304)<br>
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)<br>
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)<br>
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)<br>
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)<br>
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)<br>
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)<br>
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)<br>
    at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)<br>
    at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)<br>
    at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)<br>
    at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)<br>
    at java.lang.Thread.run(Thread.java:534)<br>
<br>
"Thread-4408" daemon prio=1 tid=0x08957ae0 nid=0x6546 in Object.wait()
[5dbb5000..5dbb5e98]<br>
    at java.lang.Object.wait(Native Method)<br>
    at java.lang.Object.wait(Object.java:429)<br>
    at
org.apache.tomcat.util.threads.ThreadPool.runIt(ThreadPool.java:232)<br>
    - locked <0x45b49628> (a
org.apache.tomcat.util.threads.ThreadPool)<br>
    at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:503)<br>
    at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)<br>
    at java.lang.Thread.run(Thread.java:534)<br>
<br>
"Thread-4407" daemon prio=1 tid=0x089567a8 nid=0x6546 waiting for
monitor entry [5db35000..5db35f18]<br>
    at java.sql.DriverManager.getConnection(DriverManager.java:187)<br>
    - waiting to lock <0x54eff978> (a java.lang.Class)<br>
    at
com.opencms.file.genericSql.CmsDbAccess.readUser(CmsDbAccess.java:10136)<br>
    at
com.opencms.file.genericSql.CmsResourceBroker.readUser(CmsResourceBroker.java:6478)<br>
    at
com.opencms.file.CmsRequestContext.init(CmsRequestContext.java:172)<br>
    at com.opencms.file.CmsObject.init(CmsObject.java:2200)<br>
    at com.opencms.core.OpenCms.initUser(OpenCms.java:896)<br>
    at
com.opencms.core.OpenCmsHttpServlet.initUser(OpenCmsHttpServlet.java:473)<br>
    at
com.opencms.core.OpenCmsHttpServlet.doGet(OpenCmsHttpServlet.java:304)<br>
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)<br>
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)<br>
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)<br>
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)<br>
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)<br>
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)<br>
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)<br>
    at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)<br>
    at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)<br>
    at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)<br>
    at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)<br>
    at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)<br>
    at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)<br>
    at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)<br>
    at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)<br>
    at java.lang.Thread.run(Thread.java:534)</font></small><br>
<br>
</body>
</html>