That means that you are not closing a connection somewhere in one of
your JSP pages.
You have to actually do a connection.close() to return your connection
to the pool. If a connection has been out "too long" (there's a
parameter for this), DBCP will give you this warning, abort the
connection, and return it to the pool.
You can disable this behavior, too - see the parameters for the
connection pool factory.
> -----Original Message-----
> From: Liqiu.Tan [mailto:liqiu.tan@stripped]
> Sent: Monday, March 17, 2003 6:48 AM
> To: java@stripped
> Subject: my DBCP problem ?
>
>
> Hello,
> I use Tomcat 4.1.12 + Mysql 3.23 and Redhat 8.0 for my
> apllication. Everything works fine ,but the tomcat log file
> "catalina.out" always reports the following errors.the
> catalina.out log file may be increased to 100M in half day .
> where is my possible problem ,thanks very much. Tan Liqiu .
>
>
> "DBCP object created 2003-23-17 21:23:54 by the following
> code was never
> closed:
> java.lang.Exception
> at
> org.apache.commons.dbcp.AbandonedTrace.init(AbandonedTrace.java:139)
> at
> org.apache.commons.dbcp.AbandonedTrace.<init>(AbandonedTrace.java:122)
> at
> org.apache.commons.dbcp.DelegatingResultSet.<init>(DelegatingR
> esultSet.java:
> 113)
> at
> org.apache.commons.dbcp.DelegatingStatement.executeQuery(Deleg
> atingStatement
> .java:162)
> at org.apache.jsp.film_jsp._jspService(film_jsp.java:58)
> at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServlet
> Wrapper.java:2
> 04)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet
> .java:289)
> at
> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(Application
> FilterChain.java:247)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilterCh
> ain.java:193)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValve.ja
> va:260)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:643)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:480)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValve.ja
> va:191)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:643)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:480)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardContext.invoke(StandardContex
> t.java:2396)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java:180
> )
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:643)
> at
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDi
> spatcherValve.
> java:170)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:641)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java:172
> )
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:641)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:480)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.java
> :174)
> at
> org.apache.catalina.core.StandardPipeline$StandardPipelineValv
> eContext.invok
> eNext(StandardPipeline.java:643)
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:480)
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.
> java:223)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:405)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
> r.processConne
> ction(Http11Protocol.java:380)
> at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:508)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
> ThreadPool.jav
> a:533)
> at java.lang.Thread.run(Thread.java:536)
>
> "
> MY datasource definition.
>
> <ResourceParams name="jdbc/test">
> <parameter>
> <name>factory</name>
> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
> </parameter>
>
> <!-- Maximum number of dB connections in pool. Make sure you
> configure your mysqld max_connections large enough to handle
> all of your db connections. Set to 0 for no limit.
> -->
> <parameter>
> <name>maxActive</name>
> <value>100</value>
> </parameter>
>
> <!-- Maximum number of idle dB connections to retain in pool.
> Set to 0 for no limit.
> -->
> <parameter>
> <name>maxIdle</name>
> <value>30</value>
> </parameter>
>
> <!-- Maximum time to wait for a dB connection to become available
> in ms, in this example 10 seconds. An Exception is thrown if
> this timeout is exceeded. Set to -1 to wait indefinitely.
> -->
> <parameter>
> <name>maxWait</name>
> <value>10000</value>
> </parameter>
>
> <!-- MySQL dB username and password for dB connections -->
> <parameter>
> <name>username</name>
> <value>root</value>
> </parameter>
> <parameter>
> <name>password</name>
> <value>ChangeFreely</value>
> </parameter>
>
> <!-- Class name for mm.mysql JDBC driver -->
> <parameter>
> <name>driverClassName</name>
> <value>org.gjt.mm.mysql.Driver</value>
> </parameter>
>
> <!-- The JDBC connection url for connecting to your MySQL dB.
> The autoReconnect=true argument to the url makes
> sure that the
> mm.mysql JDBC Driver will automatically reconnect if
> mysqld closed the
> connection. mysqld by default closes idle
> connections after 8 hours.
> -->
> <parameter>
> <name>url</name>
>
> <value>jdbc:mysql://192.168.0.24.35:3306/data?useUnicode=true;
> autoReconnect=
> true
> </value>
> </parameter>
> <parameter>
> <name>removeAbandoned</name>
> <value>true</value>
> </parameter>
> <parameter>
> <name>validationQuery</name>
> <value>SELECT 0;</value>
> </parameter>
>
>
> <parameter>
> <name>removeAbandonedTimeout</name>
> <value>60</value>
> </parameter>
> <parameter>
> <name>logAbandoned</name>
> <value>true</value>
> </parameter>
> </ResourceParams>
> </Context>
>
>
>
>
>
> ---------------------------------------------------------------------
> Before posting, please check:
> http://www.mysql.com/doc/ (the manual)
> http://lists.mysql.com/ (the list archive)
>
> To unsubscribe, e-mail
> <java-unsubscribe-shankar=cotagesoft.com@stripped>
>
>
>