简体   繁体   English

在 Windows 机器中连接到 postgress DB 时出现异常

[英]Exception while connecting to postgress DB in Windows Machine

Getting the below exception while connecting to postgress DB in Windows Machine.在 Windows 机器中连接到 postgress DB 时出现以下异常。 Could somebody please help on this有人可以帮忙吗

Using c3p0-0.9.5.2.jar使用 c3p0-0.9.5.2.jar

Exception :例外 :

2018-09-26 15:53:41,841 ERROR, com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run , A RESOURCE POOL IS PERMANENTLY BROKEN! 2018-09-26 15:53:41,841 错误,com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run,资源池永久损坏! [com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask@87274ea] (because a series of 20 acquisition attempts failed.) 2018-09-26 15:53:41,841 ERROR, com.mchange.v2.resourcepool.BasicResourcePool.unexpectedBreak , com.mchange.v2.resourcepool.BasicResourcePool@735b478 -- Unexpectedly broken!!! [com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask@87274ea](因为连续 20 次获取尝试失败。) 2018-09-26 15:53:41,841 ERROR, com.mchange.v2.resourcepool.BasicResourcePool.un com.mchange.v2.resourcepool.BasicResourcePool@735b478 -- 意外损坏!!!

com.mchange.v2.resourcepool.ResourcePoolException: Unexpected Break Stack Trace! com.mchange.v2.resourcepool.ResourcePoolException:意外中断堆栈跟踪! at com.mchange.v2.resourcepool.BasicResourcePool.unexpectedBreak(BasicResourcePool.java:974) at com.mchange.v2.resourcepool.BasicResourcePool.access$1000(BasicResourcePool.java:44) at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1927) at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:696) java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.InterruptedException at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118) at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:77) at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:74) at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:694) at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:146) Caused by: java.lang.InterruptedException at java.lang.Object.wait(Native Method) at在 com.mchange.v2.resourcepool.BasicResourcePool.unexpectedBreak(BasicResourcePool.java:974) 在 com.mchange.v2.resourcepool.BasicResourcePool.access$1000(BasicResourcePool.java:44) 在 com.mchange.v2.resourcepool$BasicResourcePool$BasicResourcePool. ScatteredAcquireTask.run(BasicResourcePool.java:1927) at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:696) java.sql.SQLException:以下失败引发了 SQLException:java.lang。 InterruptedException at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118) at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:77) at com.mchange.v2.sql.SqlUtils。 toSQLException(SqlUtils.java:74) at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:694) at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(Abs4PoolBackedDataSource.getConnection)引起: java.lang.InterruptedException at java.lang.Object.wait(Native Method) at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1465) at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644) at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:554) at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758) at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:685) ... 6 more com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1465) 位于 com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644) 位于 com.mchange.v2.resourcepool.BasicResource(BasicResource) BasicResourcePool.java:554) 在 com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758) 在 com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkout35PoolConnection() . 6 更多

private static ComboPooledDataSource cpds = new ComboPooledDataSource();
try {
cpds = new ComboPooledDataSource();
cpds.setDriverClass(BSMRCommonConstant.POSTGRES_DRIVER);
cpds.setAcquireIncrement(5);
cpds.setBreakAfterAcquireFailure(true);
cpds.setAcquireRetryAttempts(20);
cpds.setMaxPoolSize(20);
cpds.setMaxIdleTime(60 * 10);
cpds.setTestConnectionOnCheckout(true);
cpds.setAcquireRetryDelay(3000);            
cpds.setIdleConnectionTestPeriod(100);          
} catch (PropertyVetoException e) {
e.printStackTrace();
}
Connection con = null;
cpds.setJdbcUrl(url);
cpds.setPassword(password);
cpds.setUser(userName);
con = cpds.getConnection(userName, password); 

The c3po database connection pool cannot create a database connection within the configured timeout period. c3po 数据库连接池在配置的超时时间内无法创建数据库连接。

This is most likely a configuration error.这很可能是配置错误。 Have a hard look at the url you tell c3po to use.仔细查看您告诉 c3po 使用的网址。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM