com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@130b13c -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
转自:
https://forum.hibernate.org/viewtopic.php?t=947246&highlight=apparent+deadlock+c3p0
处理办法,修改连接池 ,例如修改c3p0改为 tomcat jdbc
<!-- 换用tomcat jdbc 数据源 -->
<bean id="dataSourceTemplate" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${driverClassName}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</bean>
<bean id="dataSource" class="org.apache.tomcat.jdbc.pool.DataSource">
<!-- 通过引用加载数据库信息 -->
<property name="dataSource" ref="dataSourceTemplate"/>
<property name="validationQuery" value="${validationQuery}" />
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="true" />
<property name="testOnReturn" value="false" />
<property name="validationInterval" value="30000" />
<property name="timeBetweenEvictionRunsMillis" value="300000" />
<property name="maxActive" value="120" />
<property name="minIdle" value="2" />
<property name="maxIdle" value="40" />
<property name="maxWait" value="10000" />
<property name="initialSize" value="4" />
<property name="removeAbandonedTimeout" value="180" />
<property name="removeAbandoned" value="true" />
<property name="logAbandoned" value="true" />
<property name="minEvictableIdleTimeMillis" value="1800000" />
<property name="jmxEnabled" value="true" />
</bean>