重要修复,关于因为分布式事务与druid兼容性问题导致数据库超时的bug修复

This commit is contained in:
dftre 2024-09-11 16:50:00 +08:00
parent a2954029fb
commit 0536ca3a4b

View File

@ -37,14 +37,10 @@ public class DynamicDataSourceProperties implements InitializingBean {
dataSource.setConnectProperties(prop); dataSource.setConnectProperties(prop);
AtomikosDataSourceBean ds = new AtomikosDataSourceBean(); AtomikosDataSourceBean ds = new AtomikosDataSourceBean();
ds.setXaDataSourceClassName("com.alibaba.druid.pool.xa.DruidXADataSource"); ds.setXaDataSourceClassName("com.alibaba.druid.pool.xa.DruidXADataSource");
// 添加连接池限制
ds.setMaxPoolSize(10);
ds.setMinPoolSize(3);
ds.setBorrowConnectionTimeout(60);
ds.setUniqueResourceName(name); ds.setUniqueResourceName(name);
ds.setXaProperties(prop); ds.setXaProperties(prop);
setProperties(dataSource, prop);
ds.setXaDataSource(dataSource); ds.setXaDataSource(dataSource);
setProperties(dataSource, prop);
return ds; return ds;
} }
@ -85,7 +81,8 @@ public class DynamicDataSourceProperties implements InitializingBean {
dataSource.setMaxWait(Long.parseLong(prop.getProperty("maxWait"))); dataSource.setMaxWait(Long.parseLong(prop.getProperty("maxWait")));
} }
if (prop.getProperty("timeBetweenEvictionRunsMillis") != null) { if (prop.getProperty("timeBetweenEvictionRunsMillis") != null) {
dataSource.setTimeBetweenEvictionRunsMillis(Long.parseLong(prop.getProperty("timeBetweenEvictionRunsMillis"))); dataSource.setTimeBetweenEvictionRunsMillis(
Long.parseLong(prop.getProperty("timeBetweenEvictionRunsMillis")));
} }
if (prop.getProperty("minEvictableIdleTimeMillis") != null) { if (prop.getProperty("minEvictableIdleTimeMillis") != null) {
dataSource.setMinEvictableIdleTimeMillis(Long.parseLong(prop.getProperty("minEvictableIdleTimeMillis"))); dataSource.setMinEvictableIdleTimeMillis(Long.parseLong(prop.getProperty("minEvictableIdleTimeMillis")));