These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 5 posts ] 
Author Message
 Post subject: Free connection not available - Please help
PostPosted: Mon Jul 19, 2010 12:58 am 
Newbie

Joined: Mon Jul 19, 2010 12:47 am
Posts: 2
Hi

We are faced with the following exception in our application:

org.hibernate.exception.GenericJDBCException: Cannot open connection
at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29)
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:426)
at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144)
at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119)
at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57)
at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1326)
at com.adventnet.management.transaction.TransactionAPI.beginHbnTxn(TransactionAPI.java:923)
at com.adventnet.management.transaction.TransactionAPI.beginTxn(TransactionAPI.java:856)
at com.adventnet.management.transaction.TransactionAPI.begin(TransactionAPI.java:314)
at com.adventnet.nms.store.relational.RelationalObject.beginTxn(RelationalObject.java:2298)
at com.adventnet.nms.store.relational.RelationalObject.init(RelationalObject.java:208)
at com.adventnet.nms.store.relational.RelationalPolicyObject.init(RelationalPolicyObject.java:39)
at com.adventnet.nms.store.relational.CommonPolicyToRelational.initForClass(CommonPolicyToRelational.java:145)
at com.adventnet.nms.store.relational.CommonPolicyToRelational.<init>(CommonPolicyToRelational.java:76)
at com.adventnet.management.policydb.CommonPolicyAPI.setPersistenceAPI(CommonPolicyAPI.java:63)
at com.adventnet.management.policydb.CommonPolicyAPI.<init>(CommonPolicyAPI.java:43)
at com.adventnet.management.policydb.NmsPolicyMgr.initialize(NmsPolicyMgr.java:115)
at com.adventnet.management.policydb.NmsPolicyMgr.callMain(NmsPolicyMgr.java:99)
at com.adventnet.nms.util.RunProcessSmall.runCommand(RunProcessSmall.java:97)
at com.adventnet.nms.util.RunCmd.run(RunCmd.java:100)
Caused by: java.sql.SQLException: An attempt by a client to checkout a Connection has timed out.
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:65)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:527)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
at org.hibernate.connection.C3P0ConnectionProvider.getConnection(C3P0ConnectionProvider.java:56)
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:423)
... 18 more
Caused by: com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.v2.resourcepool.BasicResourcePool@869113 -- timeout at awaitAvailable()
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1317)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)

The following is the configuration in our hibernate.cfg.xml:
<property name="hibernate.c3p0.min_size">6</property>
<property name="hibernate.c3p0.max_size">35</property>
<property name="nontransaction.connection">15</property>
<property name="hibernate.connection.autocommit">true</property>
<!--property name="hibernate.c3p0.max_statements">1000</property-->
<property name="hibernate.c3p0.acquire_increment">1</property>
<property name="hibernate.c3p0.idle_test_period">25200</property>
<property name="hibernate.jdbc.batch_size">1000</property>
<property name="hibernate.connection.isolation">2</property>
<property name="enablecache">true</property>

As you can see, the maximum number of connection is 35 .Out of which the number of transaction connections are 20 and non-transaction connections are 15.

We have done debugging from our side and we could see that only 3 transaction connections have been taken from the connection pool and all have been committed successfully. We are not sure what has been causing this problem.

However, when we increase the total number of connections by 10 , i.e. to 45, this exception doesn't occur anymore.

Can someone please provide some insight? This is urgent.


Top
 Profile  
 
 Post subject: Re: Free connection not available - Please help
PostPosted: Mon May 30, 2011 12:40 pm 
Newbie

Joined: Sun May 29, 2011 11:07 am
Posts: 5
Hi,

I have the same problem - using Spring 2.5, Hibernate 3.6, Hibernate Search 3.3.

When indexing using I get the same issue...

Many thanks
Jeremy


Top
 Profile  
 
 Post subject: Re: Free connection not available - Please help
PostPosted: Mon May 30, 2011 12:41 pm 
Newbie

Joined: Sun May 29, 2011 11:07 am
Posts: 5
..Sorry, please notify me when answered.


Top
 Profile  
 
 Post subject: Re: Free connection not available - Please help
PostPosted: Mon May 30, 2011 2:21 pm 
Hibernate Team
Hibernate Team

Joined: Fri Oct 05, 2007 4:47 pm
Posts: 2536
Location: Third rock from the Sun
Hi,
the MassIndexer will consume quite some connections, make sure to raise the max limit, or to lower the number of used threads.

_________________
Sanne
http://in.relation.to/


Top
 Profile  
 
 Post subject: Re: Free connection not available - Please help
PostPosted: Tue Nov 15, 2011 10:25 am 
Newbie

Joined: Tue Nov 15, 2011 10:20 am
Posts: 1
I have same problem any solution on this?
I am using hibernate+spring+cp30


Servlet.service() for servlet dispatcher threw exception: com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.v2.resourcepool.BasicResourcePool@1577391c -- timeout at awaitAvailable()
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1317) [:0.9.1]
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557) [:0.9.1]
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477) [:0.9.1]
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525) [:0.9.1]
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128) [:0.9.1]
at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:81) [:3.0.5.RELEASE]
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:417) [:3.2.0.ga]
at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144) [:3.2.0.ga]
at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119) [:3.2.0.ga]
at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57) [:3.2.0.ga]
at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1326) [:3.2.0.ga]
at org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:555) [:3.0.5.RELEASE]
at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:371) [:3.0.5.RELEASE]
at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:335) [:3.0.5.RELEASE]
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:105) [:3.0.5.RELEASE]
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) [:3.0.5.RELEASE]
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) [:3.0.5.RELEASE]


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 5 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.