DBCP error

Dhaval Jaiswal <[email protected]> Fri, 6 May 2011 13:26:13 +0530
Newsgroups gmane.comp.db.mysql.java
Message-ID <[email protected]>
--0015174c1ab8dacce804a296d218
Content-Type: text/plain; charset=ISO-8859-1

Hi All,

 We are frequently getting DBCP error. We have seen this error in
catalina.log & apps log. This issue has started since last 2 -3 days. We
have checked the application code when this error has occured and assure
that there is no connection leakage in code. Mysql server is also running
fine. We have tune memory parameters in mysql, however effectless. Still we
are getting the same error.

 Any suggestion/solution would be appreciated.


 Mysql server version: 5.0.45

JDBC version: mysql-connector-java-5.1.5-bin.jar

apache Tomcat version: 6.0.16


 server.xml parameters are as follows::


 url="jdbc:mysql://hostname:3306/dbname" username="user" password="pass"
maxActive="40" maxIdle="20" maxWait="5000"



 ERROR:


 2011-05-05 16:32:57,666 [ajp-8009-177] ERROR TrainSearchResultCache.java -
Error retrieving Train Search from DB: s-

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot get a connection,
pool error Timeout waiting for idle object

        at
org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:104)

        at
org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)

        at
com.eos.gds.data.DatabaseManager.getConnection(DatabaseManager.java:73)

        at
com.eos.gds.data.DatabaseManager.getConnection(DatabaseManager.java:60)

............................................

Caused by: java.util.NoSuchElementException: Timeout waiting for idle object

        at
org.apache.tomcat.dbcp.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:958)

        at
org.apache.tomcat.dbcp.dbcp.AbandonedObjectPool.borrowObject(AbandonedObjectPool.java:84)

        at
org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96)

        ... 28 more


  com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications
link failure

 Last packet sent to the server was 24 ms ago.

        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)

        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)

        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)

        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)

        at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)

        at
com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)

        at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2873)

        at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2763)

        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3299)

        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1837)

        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1961)

        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2543)

        at
com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1737)

        at
com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2022)

        at
com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1940)

        at
com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1925)

        at
org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102)

        at
com.eos.gds.cache.FareQuoteDBCache.storeItinQuotesIntoPresistentCache(FareQuoteDBCache.java:1029)

        at
com.eos.gds.cache.FareQuoteDBCache.processInputQueue(FareQuoteDBCache.java:899)

        at
com.eos.gds.cache.FareQuoteDBCache.access$000(FareQuoteDBCache.java:37)

        at
com.eos.gds.cache.FareQuoteDBCache$1.run(FareQuoteDBCache.java:103)

        at java.lang.Thread.run(Thread.java:619)

Caused by: java.net.SocketException: Socket closed

        at java.net.SocketInputStream.socketRead0(Native Method)

        at java.net.SocketInputStream.read(SocketInputStream.java:129)

        at
com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:113)

        at
com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:160)

        at
com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:188)

        at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2329)

        at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2774)




-- 
Regards,
Dhaval Jaiswal

--0015174c1ab8dacce804a296d218--