This is an automated email from the ASF dual-hosted git repository. zhoubo pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/rocketmq-connect.git
commit 9849db65544037a2b882300b96305f868e82be7e Author: affe <[email protected]> AuthorDate: Mon Jul 6 10:04:03 2020 +0800 [ISSUE #554] Update druid version and set ConnectionErrorRetryAttempts --- pom.xml | 2 +- .../rocketmq/connect/jdbc/common/DBUtils.java | 31 +++++++++++----------- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/pom.xml b/pom.xml index 61680f1..2feaa22 100644 --- a/pom.xml +++ b/pom.xml @@ -263,7 +263,7 @@ <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> - <version>1.0.31</version> + <version>1.1.22</version> </dependency> </dependencies> diff --git a/src/main/java/org/apache/rocketmq/connect/jdbc/common/DBUtils.java b/src/main/java/org/apache/rocketmq/connect/jdbc/common/DBUtils.java index 31a86d1..963fbf6 100644 --- a/src/main/java/org/apache/rocketmq/connect/jdbc/common/DBUtils.java +++ b/src/main/java/org/apache/rocketmq/connect/jdbc/common/DBUtils.java @@ -17,6 +17,7 @@ package org.apache.rocketmq.connect.jdbc.common; +import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.druid.pool.DruidDataSourceFactory; import org.apache.rocketmq.connect.jdbc.config.Config; import org.apache.rocketmq.connect.jdbc.connector.JdbcSourceTask; @@ -189,21 +190,21 @@ public class DBUtils { } public static DataSource initDataSource(Config config) throws Exception { - Map<String, String> map = new HashMap<>(); - map.put("driverClassName", "com.mysql.cj.jdbc.Driver"); - map.put("url", - "jdbc:mysql://" + config.getDbUrl() + ":" + config.getDbPort() + "?useSSL=true&verifyServerCertificate=false&serverTimezone=GMT%2B8&characterEncoding=utf8"); - map.put("username", config.getDbUsername()); - map.put("password", config.getDbPassword()); - map.put("initialSize", "1"); - map.put("maxActive", "2"); - map.put("maxWait", "60000"); - map.put("timeBetweenEvictionRunsMillis", "60000"); - map.put("minEvictableIdleTimeMillis", "300000"); - map.put("validationQuery", "SELECT 1 FROM DUAL"); - map.put("testWhileIdle", "true"); - log.info("{} config read successful", map); - DataSource dataSource = DruidDataSourceFactory.createDataSource(map); + DruidDataSource dataSource = new DruidDataSource(); + dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver"); + dataSource.setUrl("jdbc:mysql://" + config.getDbUrl() + ":" + config.getDbPort() + "?useSSL=true&verifyServerCertificate=false&serverTimezone=GMT%2B8&characterEncoding=utf8"); + dataSource.setUsername(config.getDbUsername()); + dataSource.setPassword(config.getDbPassword()); + dataSource.setInitialSize(1); + dataSource.setMaxActive(2); + dataSource.setMaxWait(60000); + dataSource.setTimeBetweenEvictionRunsMillis(60000); + dataSource.setConnectionErrorRetryAttempts(2); + dataSource.setBreakAfterAcquireFailure(true); + dataSource.setMinEvictableIdleTimeMillis(300000); + dataSource.setValidationQuery("SELECT 1 FROM DUAL"); + dataSource.setTestWhileIdle(true); + log.info("init data source success"); return dataSource; }
