This is an automated email from the ASF dual-hosted git repository. morningman pushed a commit to branch branch-1.2-lts in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-1.2-lts by this push: new 3f82abf0c9 [1.2][improvement](JDBC Catalog)Added Presto connection to Presto/Trino (#20731) 3f82abf0c9 is described below commit 3f82abf0c9507607e9db138d58da31e6a938a3ff Author: zy-kkk <zhong...@qq.com> AuthorDate: Tue Jun 13 11:38:07 2023 +0800 [1.2][improvement](JDBC Catalog)Added Presto connection to Presto/Trino (#20731) --- fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcResource.java | 4 ++++ fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcTable.java | 1 + .../src/main/java/org/apache/doris/external/jdbc/JdbcClient.java | 6 ++++++ gensrc/thrift/Types.thrift | 3 ++- 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcResource.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcResource.java index ed09ff5861..7e6acc0f66 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcResource.java +++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcResource.java @@ -69,6 +69,7 @@ public class JdbcResource extends Resource { public static final String JDBC_CLICKHOUSE = "jdbc:clickhouse"; public static final String JDBC_SAP_HANA = "jdbc:sap"; public static final String JDBC_TRINO = "jdbc:trino"; + public static final String JDBC_PRESTO = "jdbc:presto"; public static final String MYSQL = "MYSQL"; public static final String POSTGRESQL = "POSTGRESQL"; @@ -77,6 +78,7 @@ public class JdbcResource extends Resource { public static final String CLICKHOUSE = "CLICKHOUSE"; public static final String SAP_HANA = "SAP_HANA"; public static final String TRINO = "TRINO"; + public static final String PRESTO = "PRESTO"; public static final String JDBC_PROPERTIES_PREFIX = "jdbc."; public static final String JDBC_URL = "jdbc_url"; @@ -267,6 +269,8 @@ public class JdbcResource extends Resource { return SAP_HANA; } else if (url.startsWith(JDBC_TRINO)) { return TRINO; + } else if (url.startsWith(JDBC_PRESTO)) { + return PRESTO; } throw new DdlException("Unsupported jdbc database type, please check jdbcUrl: " + url); } diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcTable.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcTable.java index aeaa1fd60b..f2fe6e4798 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcTable.java +++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/JdbcTable.java @@ -76,6 +76,7 @@ public class JdbcTable extends Table { tempMap.put("clickhouse", TOdbcTableType.CLICKHOUSE); tempMap.put("sap_hana", TOdbcTableType.SAP_HANA); tempMap.put("trino", TOdbcTableType.TRINO); + tempMap.put("presto", TOdbcTableType.PRESTO); TABLE_TYPE_MAP = Collections.unmodifiableMap(tempMap); } diff --git a/fe/fe-core/src/main/java/org/apache/doris/external/jdbc/JdbcClient.java b/fe/fe-core/src/main/java/org/apache/doris/external/jdbc/JdbcClient.java index 3f635fc762..2cd6c0ab64 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/external/jdbc/JdbcClient.java +++ b/fe/fe-core/src/main/java/org/apache/doris/external/jdbc/JdbcClient.java @@ -200,6 +200,7 @@ public class JdbcClient { rs = stmt.executeQuery("SELECT SCHEMA_NAME FROM SYS.SCHEMAS WHERE HAS_PRIVILEGES = 'TRUE'"); break; case JdbcResource.TRINO: + case JdbcResource.PRESTO: rs = stmt.executeQuery("SHOW SCHEMAS"); break; default: @@ -235,6 +236,7 @@ public class JdbcClient { case JdbcResource.SQLSERVER: case JdbcResource.SAP_HANA: case JdbcResource.TRINO: + case JdbcResource.PRESTO: databaseNames.add(conn.getSchema()); break; default: @@ -277,6 +279,7 @@ public class JdbcClient { rs = databaseMetaData.getTables(null, dbName, null, hanaTypes); break; case JdbcResource.TRINO: + case JdbcResource.PRESTO: rs = databaseMetaData.getTables(catalogName, dbName, null, types); break; default: @@ -324,6 +327,7 @@ public class JdbcClient { rs = databaseMetaData.getTables(null, dbName, null, hanaTypes); break; case JdbcResource.TRINO: + case JdbcResource.PRESTO: rs = databaseMetaData.getTables(catalogName, dbName, null, types); break; default: @@ -408,6 +412,7 @@ public class JdbcClient { rs = databaseMetaData.getColumns(null, dbName, modifiedTableName, null); break; case JdbcResource.TRINO: + case JdbcResource.PRESTO: rs = databaseMetaData.getColumns(catalogName, dbName, tableName, null); break; default: @@ -464,6 +469,7 @@ public class JdbcClient { case JdbcResource.SAP_HANA: return saphanaTypeToDoris(fieldSchema); case JdbcResource.TRINO: + case JdbcResource.PRESTO: return trinoTypeToDoris(fieldSchema); default: throw new JdbcClientException("Unknown database type"); diff --git a/gensrc/thrift/Types.thrift b/gensrc/thrift/Types.thrift index 6794433d7b..1870560e52 100644 --- a/gensrc/thrift/Types.thrift +++ b/gensrc/thrift/Types.thrift @@ -373,7 +373,8 @@ enum TOdbcTableType { MONGODB, CLICKHOUSE, SAP_HANA, - TRINO + TRINO, + PRESTO } struct TJdbcExecutorCtorParams { --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org