users
[Top] [All Lists]

Connection pool exhausted

To: <users@xxxxxxxxxx>
Subject: Connection pool exhausted
From: "Ashima Gupta" <Ashima.Gupta@xxxxxxxxx>
Date: Tue, 01 Jun 2004 14:39:56 -0400
Delivered-to: mailing list users@cinjug.org
Mailing-list: contact users-help@cinjug.org; run by ezmlm
Hi All,

I keep getting Connection pool exhausted once in a while on my tomcat
application. Running tomcat-4.1.30 and also tomcat-4.1.24 on Solaris.
j2sdk1.4.2_04 and j2sdk1.4.1_02 resply. Am pretty sure all ResultSets,
Statements and Connections are being closed in the code. 

Are the following traces generated by "logAbandoned=true" parameter in
the server.xml? This seems to me just a normal exception logging at not
being able to close the connection. How do the logAbandoned traces look
like so I know what I should look for? 

Below are traces from some of my log files, there are two cases
essentially.

Thanks,
Ashima

CASE I: 
JDBCRealm[/peak-web]: Exception performing authentication
java.sql.SQLException: Io exception: Broken pipe ( or
java.sql.SQLException: No more data to read from socket sometimes)
        at
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
        at
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
        at
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:334)
        at
oracle.jdbc.driver.OracleConnection.commit(OracleConnection.java:1381)
        at
org.apache.catalina.realm.JDBCRealm.authenticate(JDBCRealm.java:505)
        at
org.apache.catalina.realm.JDBCRealm.authenticate(JDBCRealm.java:392)
        at
org.apache.catalina.authenticator.FormAuthenticator.authenticate(FormAuthenticator.java:274)
        at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:479)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
        at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)
        at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run(Thread.java:534)

JDBCRealm[/peak-web]: Exception closing database connection
java.sql.SQLException: Io exception: Broken pipe
        at
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
        at
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
        at
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:334)
        at
oracle.jdbc.driver.OracleConnection.close(OracleConnection.java:1478)
        at
org.apache.catalina.realm.JDBCRealm.close(JDBCRealm.java:541)
        at
org.apache.catalina.realm.JDBCRealm.authenticate(JDBCRealm.java:406)
        at
org.apache.catalina.authenticator.FormAuthenticator.authenticate(FormAuthenticator.java:274)
        at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:479)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
       at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
        at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
        at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700)
        at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run(Thread.java:534)

CASE II:

 StandardHost[localhost]: Removing web application at context path
/peak-web-test
JDBCRealm[/peak-web-test]: Exception closing database connection
java.sql.SQLException: No more data to read from socket
        at
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
        at
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
        at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:1160)
        at oracle.jdbc.ttc7.MAREngine.unmarshalUB1(MAREngine.java:963)
        at oracle.jdbc.ttc7.MAREngine.unmarshalSB1(MAREngine.java:893)
        at oracle.jdbc.ttc7.Ocommoncall.receive(Ocommoncall.java:104)
        at oracle.jdbc.ttc7.TTC7Protocol.logoff(TTC7Protocol.java:391)
        at
oracle.jdbc.driver.OracleConnection.close(OracleConnection.java:1472)
        at
org.apache.catalina.realm.JDBCRealm.close(JDBCRealm.java:514)
        at
org.apache.catalina.realm.JDBCRealm.stop(JDBCRealm.java:702)
        at
org.apache.catalina.core.StandardContext.stop(StandardContext.java:3703)
        at
org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:1036)
        at
org.apache.catalina.core.StandardHostDeployer.remove(StandardHostDeployer.java:470)
        at
org.apache.catalina.core.StandardHost.remove(StandardHost.java:852)
        at
org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:758)
        at
org.apache.catalina.startup.HostConfig.stop(HostConfig.java:738)
        at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:360)
        at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:166)
        at
org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1221)
        at
org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1233)
        at
org.apache.catalina.core.StandardService.stop(StandardService.java:554)
        at
org.apache.catalina.core.StandardServer.stop(StandardServer.java:2225)
        at
org.apache.catalina.startup.Catalina.start(Catalina.java:543)
        at
org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
        at
org.apache.catalina.startup.Catalina.process(Catalina.java:180)
        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:203)



<Prev in Thread] Current Thread [Next in Thread>
  • Connection pool exhausted, Ashima Gupta <=