This is an automated email from the ASF dual-hosted git repository. kxiao pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/doris.git
commit cf90cc6642f01fec6f8f3dcc166f8184f511e58a Author: zy-kkk <[email protected]> AuthorDate: Mon Aug 21 17:18:24 2023 +0800 [improve](jdbc catalog) Add more detailed exception logging to the jdbc catalog (#22930) --- .../org/apache/doris/datasource/jdbc/JdbcExternalCatalog.java | 1 + .../org/apache/doris/datasource/jdbc/client/JdbcClient.java | 5 ++++- .../apache/doris/datasource/jdbc/client/JdbcClientConfig.java | 10 ++++++++++ 3 files changed, 15 insertions(+), 1 deletion(-) 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 28897ca05c..753a5d6906 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 @@ -130,6 +130,7 @@ public class JdbcExternalCatalog extends ExternalCatalog { @Override protected void initLocalObjectsImpl() { JdbcClientConfig jdbcClientConfig = new JdbcClientConfig() + .setCatalog(this.name) .setUser(getJdbcUser()) .setPassword(getJdbcPasswd()) .setJdbcUrl(getJdbcUrl()) diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcClient.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcClient.java index 1d3361549d..751965cc59 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcClient.java +++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcClient.java @@ -52,6 +52,7 @@ public abstract class JdbcClient { private static final int HTTP_TIMEOUT_MS = 10000; protected static final int JDBC_DATETIME_SCALE = 6; + private String catalog; protected String dbType; protected String jdbcUser; protected URLClassLoader classLoader = null; @@ -93,6 +94,7 @@ public abstract class JdbcClient { } protected JdbcClient(JdbcClientConfig jdbcClientConfig) { + this.catalog = jdbcClientConfig.getCatalog(); this.jdbcUser = jdbcClientConfig.getUser(); this.isOnlySpecifiedDatabase = Boolean.parseBoolean(jdbcClientConfig.getOnlySpecifiedDatabase()); this.isLowerCaseTableNames = Boolean.parseBoolean(jdbcClientConfig.getIsLowerCaseTableNames()); @@ -160,7 +162,8 @@ public abstract class JdbcClient { try { conn = dataSource.getConnection(); } catch (Exception e) { - throw new JdbcClientException("Can not connect to jdbc", e); + throw new JdbcClientException("Can not connect to jdbc due to error: %s, catalog name: %s", e.getMessage(), + this.catalog, e); } return conn; } diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcClientConfig.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcClientConfig.java index 5c24e0298d..69dedd16d7 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcClientConfig.java +++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/jdbc/client/JdbcClientConfig.java @@ -21,6 +21,7 @@ package org.apache.doris.datasource.jdbc.client; import java.util.Map; public class JdbcClientConfig { + private String catalog; private String user; private String password; private String jdbcUrl; @@ -31,6 +32,15 @@ public class JdbcClientConfig { private Map<String, Boolean> includeDatabaseMap; private Map<String, Boolean> excludeDatabaseMap; + public String getCatalog() { + return catalog; + } + + public JdbcClientConfig setCatalog(String catalog) { + this.catalog = catalog; + return this; + } + public String getUser() { return user; } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
