出错信息
八月 02, 2020 2:12:16 下午 com.mchange.v2.log.MLog
信息: MLog clients using java 1.4+ standard logging.
八月 02, 2020 2:12:17 下午 com.mchange.v2.c3p0.C3P0Registry banner
信息: Initializing c3p0-0.9.1.2 [built 21-May-2007 15:04:56; debug? true; trace: 10]
八月 02, 2020 2:12:17 下午 com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource getPoolManager
信息: Initializing c3p0 pool… com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 5, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, dataSourceName -> helloc3p0, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> com.mysql.cj.jdbc.Driver, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> 1hgery9ab1c817kn111kgbk|7b1d7fff, idleConnectionTestPeriod -> 0, initialPoolSize -> 10, jdbcUrl -> jdbc:mysql://localhost:3306/test?useSSL=false&
useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&rewriteBatchedStatements=true, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 0, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 100, maxStatements -> 50, maxStatementsPerConnection -> 2, minPoolSize -> 10, numHelperThreads -> 3, numThreadsAwaitingCheckoutDefaultUser -> 0, preferredTestQuery -> null, properties -> {user=******, password=******}, propertyCycle -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, usesTraditionalReflectiveProxies -> false ]
八月 02, 2020 2:12:37 下午 com.mchange.v2.async.ThreadPoolAsynchronousRunnerDeadlockDetectorrun警告:com.mchange.v2.async.ThreadPoolAsynchronousRunnerDeadlockDetector run
警告: com.mchange.v2.async.ThreadPoolAsynchronousRunnerDeadlockDetectorrun警告:com.mchange.v2.async.ThreadPoolAsynchronousRunnerDeadlockDetector@6be5b0ca – APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
八月 02, 2020 2:12:37 下午 com.mchange.v2.async.ThreadPoolAsynchronousRunnerDeadlockDetectorrun警告:com.mchange.v2.async.ThreadPoolAsynchronousRunnerDeadlockDetector run
警告: com.mchange.v2.async.ThreadPoolAsynchronousRunnerDeadlockDetectorrun警告:com.mchange.v2.async.ThreadPoolAsynchronousRunnerDeadlockDetector@6be5b0ca – APPARENT DEADLOCK!!! Complete Status:
Managed Threads: 3
Active Threads: 3
Active Tasks:
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@241f49fd(com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask@241f49fd (com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask@241f49fd(com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread-#1)
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@623ade54(com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask@623ade54 (com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask@623ade54(com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread-#2)
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@15f18da6(com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask@15f18da6 (com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask@15f18da6(com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread-#0)
Pending Tasks:
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@1a3e44a9com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@1a3e44a9
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@1a3e44a9com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@4430b6b2
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@70cc081ecom.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@70cc081e
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@70cc081ecom.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@69c9271c
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@13a2d80com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@13a2d80
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@13a2d80com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@407e8e33
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask@50e2e2daPoolthreadstacktraces:Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask@50e2e2da
Pool thread stack traces:
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask@50e2e2daPoolthreadstacktraces:Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread-#1,5,main]
java.lang.Thread.sleep(Native Method)
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask.run(BasicResourcePool.java:1805)com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask.run(BasicResourcePool.java:1805)
com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask.run(BasicResourcePool.java:1805)com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread.run(ThreadPoolAsynchronousRunner.java:547)
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunnerKaTeX parse error: Expected 'EOF', got '#' at position 12: PoolThread-#̲2,5,main]
jav…AcquireTask.run(BasicResourcePool.java:1805)
com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread.run(ThreadPoolAsynchronousRunner.java:547)Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread.run(ThreadPoolAsynchronousRunner.java:547)
Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread.run(ThreadPoolAsynchronousRunner.java:547)Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread-#0,5,main]
java.lang.Thread.sleep(Native Method)
com.mchange.v2.resourcepool.BasicResourcePoolAcquireTask.run(BasicResourcePool.java:1805)com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask.run(BasicResourcePool.java:1805)
com.mchange.v2.async.ThreadPoolAsynchronousRunnerAcquireTask.run(BasicResourcePool.java:1805)com.mchange.v2.async.ThreadPoolAsynchronousRunnerPoolThread.run(ThreadPoolAsynchronousRunner.java:547)
因为我的mysql是8.x,所以修改如下
改正信息:
在配置c3p0-config.xml 中修改:
jdbc:mysql://localhost:3306/test**?&
useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true**
成功如下:
八月 02, 2020 2:16:26 下午 com.mchange.v2.log.MLog
信息: MLog clients using java 1.4+ standard logging.
八月 02, 2020 2:16:26 下午 com.mchange.v2.c3p0.C3P0Registry banner
信息: Initializing c3p0-0.9.1.2 [built 21-May-2007 15:04:56; debug? true; trace: 10]
八月 02, 2020 2:16:27 下午 com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource getPoolManager
信息: Initializing c3p0 pool… com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 5, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, dataSourceName -> helloc3p0, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> com.mysql.cj.jdbc.Driver, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> 1hgery9ab1c86kc7kt367a|7b1d7fff, idleConnectionTestPeriod -> 0, initialPoolSize -> 10, jdbcUrl -> jdbc:mysql://localhost:3306/test?&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 0, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 100, maxStatements -> 50, maxStatementsPerConnection -> 2, minPoolSize -> 10, numHelperThreads -> 3, numThreadsAwaitingCheckoutDefaultUser -> 0, preferredTestQuery -> null, properties -> {user=******, password=******}, propertyCycle -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, usesTraditionalReflectiveProxies -> false ]
com.mchange.v2.c3p0.impl.NewProxyConnection@6cd8737
本文记录了在使用C3P0连接池时遇到的死锁问题及解决方案。通过调整数据库连接参数,特别是针对MySQL 8.x版本的配置,成功解决了连接池的死锁情况,确保了应用程序的稳定运行。
1335

被折叠的 条评论
为什么被折叠?



