springmvc 运行起来一段时间报异常com.mchange.v2.async.ThreadPoolAsynchronousRunner$Pool

rookie0 2014-03-07 05:44:29
框架是springmvc maven tomcat7 c3p数据源 ,服务器起来一段时间后会报错

[com.mchange.v2.async.ThreadPoolAsynchronousRunner]com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@187bd31 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
[com.mchange.v2.async.ThreadPoolAsynchronousRunner]com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@187bd31 -- APPARENT DEADLOCK!!! Complete Status:
Managed Threads: 3
Active Threads: 3
Active Tasks:
com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@a62840 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2)
com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@9cbfa1 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0)
com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@e916a1 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1)
Pending Tasks:
com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@ccdcea
com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@1bb8b29
Pool thread stack traces:
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,main]
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(Unknown Source)
oracle.net.ns.Packet.receive(Packet.java:286)
oracle.net.ns.DataPacket.receive(DataPacket.java:100)
oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:227)
oracle.net.ns.NetInputStream.read(NetInputStream.java:172)
oracle.net.ns.NetInputStream.read(NetInputStream.java:97)
oracle.net.ns.NetInputStream.read(NetInputStream.java:82)
oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:119)
oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:75)
oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1263)
oracle.jdbc.driver.T4CMAREngine.unmarshalSB1(T4CMAREngine.java:1238)
oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:296)
oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:193)
oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:225)
oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:1087)
oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1348)
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1539)
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3929)
oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3999)
oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:4515)
oracle.jdbc.OracleDatabaseMetaData.getTables(OracleDatabaseMetaData.java:6395)
com.mchange.v2.c3p0.impl.DefaultConnectionTester.activeCheckConnectionNoQuery(DefaultConnectionTester.java:185)
com.mchange.v2.c3p0.impl.DefaultConnectionTester.activeCheckConnection(DefaultConnectionTester.java:62)
com.mchange.v2.c3p0.AbstractConnectionTester.activeCheckConnection(AbstractConnectionTester.java:67)
com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.testPooledConnection(C3P0PooledConnectionPool.java:368)
com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.refurbishIdleResource(C3P0PooledConnectionPool.java:310)
com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask.run(BasicResourcePool.java:1999)
com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
...全文
4741 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wrong1111 2016-08-22
  • 打赏
  • 举报
回复
解决方法 http://blog.sina.com.cn/s/blog_5491164b0100sxtc.html 可以尝试改用druid联接池试下。 tomcat中Context.xml 中配置 <Resource name="jdbc/bdbvip" factory="com.alibaba.druid.pool.DruidDataSourceFactory" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.0.101:3306/bdbao?useUnicode=true&characterEncoding=utf-8" username="bdbvip" password="123456" maxActive="50" maxWait="10000" removeabandoned="true" removeabandonedtimeout="60" logabandoned="false" filters="stat"/> 加入包 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.23</version> </dependency>
子木 2016-08-21
  • 打赏
  • 举报
回复
c3p0的异步处理造成的自身bug, 即使同一war在不同的环境下,有些可能正常,有些就不正常,已深受其害。换成dbcp连接池之后就没问题了
SimoneTao 2016-08-04
  • 打赏
  • 举报
回复
楼主到底是怎么解决的?倒是给个话呀。
勇跃 2016-04-05
  • 打赏
  • 举报
回复
楼主怎么解决的啊
chenhaohao_123 2014-10-03
  • 打赏
  • 举报
回复
请问楼主最后怎样解决的

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧