2010-02-20 11:01:16,093 WARN [com.mchange.v2.async.ThreadPoolAsynchronousRunner] - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@16a3360 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
2010-02-20 11:01:16,109 WARN [com.mchange.v2.async.ThreadPoolAsynchronousRunner] - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@16a3360 -- APPARENT DEADLOCK!!! Complete Status: [num_managed_threads: 3, num_active: 3; activeTasks: com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1ff9150 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0), com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@19d4e7a (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2), com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@8b3bcd (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1); pendingTasks: com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1031837, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@2ad5dc, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@3e9705, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@12ce92f, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1814de3, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@20a20a, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@6e69ac, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@dbb0f7, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@13f4444, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@9ad534, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1237243, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@22c094, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1917330, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@2195be, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@ee0080, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@163084b, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@b57dde, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@15aa023, com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@c7838f, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@8e2bf1, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1e6f732, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@6f0c2f, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@89152c, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1cd17ac, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1cd4f5d, com.mchange.v2.resourcepool.BasicResourcePool$5@1593ce, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@9ac9d6, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@393641, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@18eaa5, com.mchange.v2.resourcepool.BasicResourcePool$6@1d51055, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1233d63, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@93551e, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@b96163, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@a8ccce, com.mchange.v2.resourcepool.BasicResourcePool$6@1df507, com.mchange.v2.resourcepool.BasicResourcePool$6@c1d919, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@93feda, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@409fa2, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@b08362, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@81abcc, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1360d86, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1b1fbe9, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@11af14, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@fd5978, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@fce31f, com.mchange.v2.resourcepool.BasicResourcePool$6@a34126, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@a347a, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1fb470b, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1f54a25, com.mchange.v2.resourcepool.BasicResourcePool$6@d6f354, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@11975, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@2e808a, com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@f8f173, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1b3e7c8, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@361f38, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@13ba921, com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1dccbb3]
2010-02-20 11:02:04,781 WARN [com.mchange.v2.resourcepool.BasicResourcePool] - BasicResourcePool: An idle resource is broken and will be purged.
java.sql.SQLException: Connection is invalid
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1.testPooledConnection(C3P0PooledConnectionPool.java:196)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1.refurbishIdleResource(C3P0PooledConnectionPool.java:136)
at com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask.run(BasicResourcePool.java:1394)
at com.mchange.v2.async.ThreadPerTaskAsynchronousRunner$TaskThread.run(ThreadPerTaskAsynchronousRunner.java:255)
C3P0的这个问题一直没有解决,我最后使用了proxool,完美解决了此问题,所以在此推荐大家使用proxool,稳定运行3个月了,没有出现问题