This is an automated email from the ASF dual-hosted git repository.
caishunfeng pushed a commit to branch 2.0.3-prepare
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
The following commit(s) were added to refs/heads/2.0.3-prepare by this push:
new d6d806c [fix-7671][plugin] Supports whether SQL is placed in the same
session for configuration(fix-7671) (#7675) (#8002)
d6d806c is described below
commit d6d806c3cc0859f11d61701a17eda6c5705a141f
Author: wind <[email protected]>
AuthorDate: Thu Jan 13 19:37:58 2022 +0800
[fix-7671][plugin] Supports whether SQL is placed in the same session for
configuration(fix-7671) (#7675) (#8002)
-Supports whether SQL is placed in the same session for configuration
Co-authored-by: mask <[email protected]>
---
dolphinscheduler-common/src/main/resources/common.properties | 3 +++
.../plugin/datasource/api/provider/JdbcDataSourceProvider.java | 5 +++--
.../main/java/org/apache/dolphinscheduler/spi/utils/Constants.java | 5 +++++
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/dolphinscheduler-common/src/main/resources/common.properties
b/dolphinscheduler-common/src/main/resources/common.properties
index 3cf79f3..eb5de5d 100644
--- a/dolphinscheduler-common/src/main/resources/common.properties
+++ b/dolphinscheduler-common/src/main/resources/common.properties
@@ -75,6 +75,9 @@ datasource.encryption.enable=false
# datasource encryption salt
datasource.encryption.salt=!@#$%^&*
+# Whether hive SQL is executed in the same session
+support.hive.oneSession=false
+
# use sudo or not, if set true, executing user is tenant user and deploy user
needs sudo permissions; if set false, executing user is the deploy user and
doesn't need sudo permissions
sudo.enable=true
diff --git
a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-api/src/main/java/org/apache/dolphinscheduler/plugin/datasource/api/provider/JdbcDataSourceProvider.java
b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-api/src/main/java/org/apache/dolphinscheduler/plugin/datasource/api/provider/JdbcDataSourceProvider.java
index 24a6a29..ac93ee1 100644
---
a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-api/src/main/java/org/apache/dolphinscheduler/plugin/datasource/api/provider/JdbcDataSourceProvider.java
+++
b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-api/src/main/java/org/apache/dolphinscheduler/plugin/datasource/api/provider/JdbcDataSourceProvider.java
@@ -77,8 +77,9 @@ public class JdbcDataSourceProvider {
dataSource.setUsername(properties.getUser());
dataSource.setPassword(PasswordUtils.decodePassword(properties.getPassword()));
- dataSource.setMinimumIdle(1);
- dataSource.setMaximumPoolSize(1);
+ Boolean isOneSession =
PropertyUtils.getBoolean(Constants.SUPPORT_HIVE_ONE_SESSION, false);
+ dataSource.setMinimumIdle(isOneSession ? 1 :
PropertyUtils.getInt(Constants.SPRING_DATASOURCE_MIN_IDLE, 5));
+ dataSource.setMaximumPoolSize(isOneSession ? 1 :
PropertyUtils.getInt(Constants.SPRING_DATASOURCE_MAX_ACTIVE, 50));
dataSource.setConnectionTestQuery(properties.getValidationQuery());
if (properties.getProps() != null) {
diff --git
a/dolphinscheduler-spi/src/main/java/org/apache/dolphinscheduler/spi/utils/Constants.java
b/dolphinscheduler-spi/src/main/java/org/apache/dolphinscheduler/spi/utils/Constants.java
index 4c37e90..abe0672 100644
---
a/dolphinscheduler-spi/src/main/java/org/apache/dolphinscheduler/spi/utils/Constants.java
+++
b/dolphinscheduler-spi/src/main/java/org/apache/dolphinscheduler/spi/utils/Constants.java
@@ -119,6 +119,11 @@ public class Constants {
public static final String KERBEROS = "kerberos";
/**
+ * support hive datasource in one session
+ */
+ public static final String SUPPORT_HIVE_ONE_SESSION =
"support.hive.oneSession";
+
+ /**
* driver
*/
public static final String ORG_POSTGRESQL_DRIVER = "org.postgresql.Driver";