From a937ae760eb51468929493101fcdb84561db1747 Mon Sep 17 00:00:00 2001 From: senmiaoliu Date: Wed, 3 Apr 2024 17:30:42 +0800 Subject: [PATCH] [KYUUBI #6243] Add missing Impala alias for JDBC engine MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # :mag: Description ## Issue References ๐Ÿ”— ## Describe Your Solution ๐Ÿ”ง Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change. ## Types of changes :bookmark: - [x] Bugfix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [ ] Breaking change (fix or feature that would cause existing functionality to change) ## Test Plan ๐Ÿงช #### Behavior Without This Pull Request :coffin: #### Behavior With This Pull Request :tada: #### Related Unit Tests --- # Checklist ๐Ÿ“ - [ ] This patch was not authored or co-authored using [Generative Tooling](https://www.apache.org/legal/generative-tooling.html) **Be nice. Be informative.** Closes #6238 from lsm1/branch-conf-add-Impala. Closes #6243 de3093d6a [senmiaoliu] add Impala conf Authored-by: senmiaoliu Signed-off-by: Cheng Pan --- docs/configuration/settings.md | 4 ++-- .../main/scala/org/apache/kyuubi/config/KyuubiConf.scala | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/configuration/settings.md b/docs/configuration/settings.md index 0dbe3a8fb..d939e9122 100644 --- a/docs/configuration/settings.md +++ b/docs/configuration/settings.md @@ -158,7 +158,7 @@ You can configure the Kyuubi properties in `$KYUUBI_HOME/conf/kyuubi-defaults.co | kyuubi.engine.jdbc.connection.password | <undefined> | The password is used for connecting to server | string | 1.6.0 | | kyuubi.engine.jdbc.connection.propagateCredential | false | Whether to use the session's user and password to connect to database | boolean | 1.8.0 | | kyuubi.engine.jdbc.connection.properties || The additional properties are used for connecting to server | seq | 1.6.0 | -| kyuubi.engine.jdbc.connection.provider | <undefined> | A JDBC connection provider plugin for the Kyuubi Server to establish a connection to the JDBC URL. The configuration value should be a subclass of `org.apache.kyuubi.engine.jdbc.connection.JdbcConnectionProvider`. Kyuubi provides the following built-in implementations:
  • doris: For establishing Doris connections.
  • mysql: For establishing MySQL connections.
  • phoenix: For establishing Phoenix connections.
  • postgresql: For establishing PostgreSQL connections.
  • starrocks: For establishing StarRocks connections.
  • clickhouse: For establishing clickhouse connections.
  • | string | 1.6.0 | +| kyuubi.engine.jdbc.connection.provider | <undefined> | A JDBC connection provider plugin for the Kyuubi Server to establish a connection to the JDBC URL. The configuration value should be a subclass of `org.apache.kyuubi.engine.jdbc.connection.JdbcConnectionProvider`. Kyuubi provides the following built-in implementations:
  • doris: For establishing Doris connections.
  • mysql: For establishing MySQL connections.
  • phoenix: For establishing Phoenix connections.
  • postgresql: For establishing PostgreSQL connections.
  • starrocks: For establishing StarRocks connections.
  • impala: For establishing Impala connections.
  • clickhouse: For establishing clickhouse connections.
  • | string | 1.6.0 | | kyuubi.engine.jdbc.connection.url | <undefined> | The server url that engine will connect to | string | 1.6.0 | | kyuubi.engine.jdbc.connection.user | <undefined> | The user is used for connecting to server | string | 1.6.0 | | kyuubi.engine.jdbc.driver.class | <undefined> | The driver class for JDBC engine connection | string | 1.6.0 | @@ -205,7 +205,7 @@ You can configure the Kyuubi properties in `$KYUUBI_HOME/conf/kyuubi-defaults.co | kyuubi.engine.trino.java.options | <undefined> | The extra Java options for the Trino query engine | string | 1.6.0 | | kyuubi.engine.trino.memory | 1g | The heap memory for the Trino query engine | string | 1.6.0 | | kyuubi.engine.trino.operation.incremental.collect | false | When true, the result will be sequentially calculated and returned to the trino. It fallback to `kyuubi.operation.incremental.collect` | boolean | 1.10.0 | -| kyuubi.engine.type | SPARK_SQL | Specify the detailed engine supported by Kyuubi. The engine type bindings to SESSION scope. This configuration is experimental. Currently, available configs are:
    • SPARK_SQL: specify this engine type will launch a Spark engine which can provide all the capacity of the Apache Spark. Note, it's a default engine type.
    • FLINK_SQL: specify this engine type will launch a Flink engine which can provide all the capacity of the Apache Flink.
    • TRINO: specify this engine type will launch a Trino engine which can provide all the capacity of the Trino.
    • HIVE_SQL: specify this engine type will launch a Hive engine which can provide all the capacity of the Hive Server2.
    • JDBC: specify this engine type will launch a JDBC engine which can forward queries to the database system through the certain JDBC driver, for now, it supports Doris, MySQL, Phoenix, PostgreSQL, StarRocks and ClickHouse.
    • CHAT: specify this engine type will launch a Chat engine.
    | string | 1.4.0 | +| kyuubi.engine.type | SPARK_SQL | Specify the detailed engine supported by Kyuubi. The engine type bindings to SESSION scope. This configuration is experimental. Currently, available configs are:
    • SPARK_SQL: specify this engine type will launch a Spark engine which can provide all the capacity of the Apache Spark. Note, it's a default engine type.
    • FLINK_SQL: specify this engine type will launch a Flink engine which can provide all the capacity of the Apache Flink.
    • TRINO: specify this engine type will launch a Trino engine which can provide all the capacity of the Trino.
    • HIVE_SQL: specify this engine type will launch a Hive engine which can provide all the capacity of the Hive Server2.
    • JDBC: specify this engine type will launch a JDBC engine which can forward queries to the database system through the certain JDBC driver, for now, it supports Doris, MySQL, Phoenix, PostgreSQL, StarRocks, Impala and ClickHouse.
    • CHAT: specify this engine type will launch a Chat engine.
    | string | 1.4.0 | | kyuubi.engine.ui.retainedSessions | 200 | The number of SQL client sessions kept in the Kyuubi Query Engine web UI. | int | 1.4.0 | | kyuubi.engine.ui.retainedStatements | 200 | The number of statements kept in the Kyuubi Query Engine web UI. | int | 1.4.0 | | kyuubi.engine.ui.stop.enabled | true | When true, allows Kyuubi engine to be killed from the Spark Web UI. | boolean | 1.3.0 | diff --git a/kyuubi-common/src/main/scala/org/apache/kyuubi/config/KyuubiConf.scala b/kyuubi-common/src/main/scala/org/apache/kyuubi/config/KyuubiConf.scala index 9646fec43..170e6950c 100644 --- a/kyuubi-common/src/main/scala/org/apache/kyuubi/config/KyuubiConf.scala +++ b/kyuubi-common/src/main/scala/org/apache/kyuubi/config/KyuubiConf.scala @@ -2173,7 +2173,8 @@ object KyuubiConf { " all the capacity of the Hive Server2." + "
  • JDBC: specify this engine type will launch a JDBC engine which can forward" + " queries to the database system through the certain JDBC driver," + - " for now, it supports Doris, MySQL, Phoenix, PostgreSQL, StarRocks and ClickHouse.
  • " + + " for now, it supports Doris, MySQL, Phoenix, PostgreSQL, StarRocks, Impala" + + " and ClickHouse." + "
  • CHAT: specify this engine type will launch a Chat engine.
  • " + "") .version("1.4.0") @@ -3068,6 +3069,7 @@ object KyuubiConf { "
  • phoenix: For establishing Phoenix connections.
  • " + "
  • postgresql: For establishing PostgreSQL connections.
  • " + "
  • starrocks: For establishing StarRocks connections.
  • " + + "
  • impala: For establishing Impala connections.
  • " + "
  • clickhouse: For establishing clickhouse connections.
  • ") .version("1.6.0") .stringConf @@ -3082,6 +3084,8 @@ object KyuubiConf { "org.apache.kyuubi.engine.jdbc.postgresql.PostgreSQLConnectionProvider" case "StarRocks" | "starrocks" | "StarRocksConnectionProvider" => "org.apache.kyuubi.engine.jdbc.starrocks.StarRocksConnectionProvider" + case "Impala" | "impala" | "ImpalaConnectionProvider" => + "org.apache.kyuubi.engine.jdbc.impala.ImpalaConnectionProvider" case "ClickHouse" | "clickhouse" | "ClickHouseConnectionProvider" => "org.apache.kyuubi.engine.jdbc.clickhouse.ClickHouseConnectionProvider" case other => other