[improve](jdbc catalog) Add more detailed exception logging to the jdbc catalog (#22930)
This commit is contained in:
@ -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())
|
||||
|
||||
@ -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;
|
||||
}
|
||||
|
||||
@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user