This is an automated email from the ASF dual-hosted git repository.

yiguolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new 2f775260d7f [bugfix](jdbc catalog) refresh catalog close jdbcclient 
(#28300)
2f775260d7f is described below

commit 2f775260d7f5b8f1368a1b40d5c919d79028fb35
Author: Guangdong Liu <[email protected]>
AuthorDate: Sat Dec 16 23:38:24 2023 +0800

    [bugfix](jdbc catalog) refresh catalog close jdbcclient (#28300)
---
 .../src/main/java/org/apache/doris/datasource/CatalogIf.java      | 2 +-
 .../src/main/java/org/apache/doris/datasource/CatalogMgr.java     | 2 +-
 .../main/java/org/apache/doris/datasource/ExternalCatalog.java    | 2 +-
 .../org/apache/doris/datasource/jdbc/JdbcExternalCatalog.java     | 8 ++++++++
 4 files changed, 11 insertions(+), 3 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogIf.java 
b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogIf.java
index e75eab8e216..c8f3033c668 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogIf.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogIf.java
@@ -85,7 +85,7 @@ public interface CatalogIf<T extends DatabaseIf> {
 
     default void notifyPropertiesUpdated(Map<String, String> updatedProps) {
         if (this instanceof ExternalCatalog) {
-            ((ExternalCatalog) this).setUninitialized(false);
+            ((ExternalCatalog) this).onRefresh(false);
         }
     }
 
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java 
b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java
index 79dd31a26ff..3604d1c628e 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java
@@ -150,7 +150,7 @@ public class CatalogMgr implements Writable, 
GsonPostProcessable {
         if (catalog != null) {
             String catalogName = catalog.getName();
             if (!catalogName.equals(InternalCatalog.INTERNAL_CATALOG_NAME)) {
-                ((ExternalCatalog) catalog).setUninitialized(invalidCache);
+                ((ExternalCatalog) catalog).onRefresh(invalidCache);
             }
         }
     }
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/datasource/ExternalCatalog.java 
b/fe/fe-core/src/main/java/org/apache/doris/datasource/ExternalCatalog.java
index 413f6554c88..0e12e942c9b 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/ExternalCatalog.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/ExternalCatalog.java
@@ -287,7 +287,7 @@ public abstract class ExternalCatalog
         Env.getCurrentEnv().getEditLog().logInitCatalog(initCatalogLog);
     }
 
-    public void setUninitialized(boolean invalidCache) {
+    public void onRefresh(boolean invalidCache) {
         this.objectCreated = false;
         this.initialized = false;
         this.invalidCacheInInit = invalidCache;
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/JdbcExternalCatalog.java
 
b/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/JdbcExternalCatalog.java
index 93fdfa2bfd3..aa0704e9647 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/JdbcExternalCatalog.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/JdbcExternalCatalog.java
@@ -67,6 +67,14 @@ public class JdbcExternalCatalog extends ExternalCatalog {
         }
     }
 
+    @Override
+    public void onRefresh(boolean invalidCache) {
+        super.onRefresh(invalidCache);
+        if (jdbcClient != null) {
+            jdbcClient.closeClient();
+        }
+    }
+
     @Override
     public void onClose() {
         super.onClose();


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to