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;
     }

Reply via email to