【发布时间】:2012-08-02 19:44:21
【问题描述】:
我正在使用 Spring 3.0.5.RELEASE 和 Postgres 9.1。 我将最大连接数限制在 17 以内:
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="${database.driver}" />
<property name="jdbcUrl" value="${database.url}" />
<property name="user" value="${database.username}" />
<property name="password" value="${database.password}" />
<property name="initialPoolSize" value="3" />
<property name="minPoolSize" value="1" />
<property name="maxPoolSize" value="17" />
</bean>
当我的应用程序占用所有连接时,它只是挂起,不会取消或接受更多事务。 Postgres 中的所有进程都处于“idle in transaction”状态。
谢谢!
【问题讨论】:
-
你没有给我们太多的工作。 “Idle in transaction”应该是一个非常的瞬时状态——当一个连接处于该状态任意时间时,它通常代表应用程序代码中的一个非常严重的错误,这是你没有显示的我们。
标签: java spring hibernate postgresql c3p0