欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C3P0错误APPARENT DEADLOCK!!!解决

程序员文章站 2022-06-11 21:43:48
...

在使用C3P0的过程中出现了好多错误.最长见就是死锁,占用资源比较大. 

在日志中出现大量如下日志

16:18:01.294 ERROR org.hibernate.util.JDBCExceptionReporter - An attempt by a client to checkout a Connection has timed out.
<!--JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements 
属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。 
如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default: 0--> 
<property name="maxStatements">100</property> 

<!--maxStatementsPerConnection定义了连接池内单个连接所拥有的最大缓存statements数。Default: 0 --> 
<property name="maxStatementsPerConnection"></property> 

解决的方法是: 

In hibernate.cfg.xml: 
<property name="hibernate.c3p0.max_statements">0</property>  


In c3p0.properties: 
c3p0.maxStatements=0 
c3p0.maxStatementsPerConnection=100 

 

相关标签: c3p0