checkoutTimeout設置成1000引發的調試錯誤:
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException:
### Error updating database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: An attempt by a client to checkout a Connection has timed out.
### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: An attempt by a client to checkout a Connection has timed out.
-------------------------------------------------------------------------------------------------------------------
c3p0私有屬性配置:
# 始化時創建的連接數,應在minPoolSize與maxPoolSize之間取值。默認為
3
initialPoolSize=
20
# 接池中保留的最大連接數。默認為
15
maxPoolSize=
30
minPoolSize=
20
# 當連接池中的連接用完時,C3P0一次性創建新連接的數目 默認
3
acquireIncrement=
10
# 定義在從數據庫獲取新連接失敗后重復嘗試獲取的次數,默認為
30
acquireRetryAttempts=
100
# 兩次連接中間隔時間,單位毫秒,默認為
1000
acquireRetryDelay=
1000
# 連接關閉時默認將所有未提交的操作回滾。默認為
false
autoCommitOnClose=
false
# 獲取連接失敗將會引起所有等待獲取連接的線程拋出異常。但是數據源仍有效保留,並在下
# 次調用getConnection()的時候繼續嘗試獲取連接。如果設為
true
,那么在嘗試獲取連接
# 失敗后該數據源將申明已斷開並永久關閉。默認為
false
breakAfterAcquireFailure=
false
# 當連接池用完時客戶端調用getConnection()后等待獲取新連接的時間,超時后將拋出
# SQLException,如設為
0
則無限期等待。單位毫秒,默認為
0
checkoutTimeout=
20000
# 最大空閑時間,超過空閑時間的連接將被丟棄。為
0
或負數則永不丟棄。默認為
0
maxIdleTime=
60
# 每
60
秒檢查所有連接池中的空閑連接。Default:
0
idleConnectionTestPeriod=
60
# C3P0是異步操作的,緩慢的JDBC操作通過幫助進程完成。擴展這些操作可以有效的提升性能
#通過多線程實現多個操作同時被執行。默認為
3
numHelperThreads=
3
# 用戶修改系統配置參數執行前最多等待的秒數。默認為
300
propertyCycle=
300
maxStatements=
0
# 當連接池用完時客戶端調用getConnection()后等待獲取新連接的時間,超時后將拋出
# SQLException,如設為
0
則無限期等待。單位毫秒,默認為
0
checkoutTimeout=
20000