一、错误详情
调接口时反应及慢,迟迟不响应,之后提示下面的报错
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is com.atomikos.jdbc.AtomikosSQLException: Connection pool exhausted - try increasing 'maxPoolSize' and/or 'borrowConnectionTimeout' on the DataSourceBean.
二、错误原因
使用Atomikos这个插件配置参数AtomikosDataSourceBean时忘记配置MinPoolSize,MaxPoolSize,BorrowConnectionTimeout这三个参数,导致连接池资源耗尽。
参数设置前代码:
AtomikosDataSourceBean ds = new AtomikosDataSourceBean();
ds.setXaProperties(properties);
ds.setUniqueResourceName("masterXADataSource");
ds.setXaDataSourceClassName("oracle.jdbc.xa.client.OracleXADataSource");
三、解决方法
设置对应参数即可,参数设置后代码:
AtomikosDataSourceBean ds = new AtomikosDataSourceBean();
ds.setXaProperties(properties);
ds.setUniqueResourceName("masterXADataSource");
ds.setXaDataSourceClassName("oracle.jdbc.xa.client.OracleXADataSource");
ds.setMaxPoolSize(100);
ds.setMinPoolSize(10);
ds.setBorrowConnectionTimeout(60);
文章评论