From c58dbefaa50224f60d581980a43ba3d2ee4634a2 Mon Sep 17 00:00:00 2001 From: xiangzihao <460888207@qq.com> Date: Fri, 31 Dec 2021 16:26:07 +0800 Subject: [PATCH] [Fix-7459][Sqoop] running error in parallel (#7752) * fix bug_7459 * fix bug_7459 * fix bug_7459 * fix bug_7459 * fix bug_7459 Co-authored-by: SbloodyS --- .../generator/targets/HiveTargetGenerator.java | 6 ++++++ .../parameter/targets/TargetHiveParameter.java | 12 ++++++++++++ .../pages/dag/_source/formModel/tasks/sqoop.vue | 13 +++++++++++++ .../src/js/module/i18n/locale/en_US.js | 1 + .../src/js/module/i18n/locale/zh_CN.js | 1 + 5 files changed, 33 insertions(+) diff --git a/dolphinscheduler-task-plugin/dolphinscheduler-task-sqoop/src/main/java/org/apache/dolphinscheduler/plugin/task/sqoop/generator/targets/HiveTargetGenerator.java b/dolphinscheduler-task-plugin/dolphinscheduler-task-sqoop/src/main/java/org/apache/dolphinscheduler/plugin/task/sqoop/generator/targets/HiveTargetGenerator.java index 05ba68fe9e..5e768f3850 100644 --- a/dolphinscheduler-task-plugin/dolphinscheduler-task-sqoop/src/main/java/org/apache/dolphinscheduler/plugin/task/sqoop/generator/targets/HiveTargetGenerator.java +++ b/dolphinscheduler-task-plugin/dolphinscheduler-task-sqoop/src/main/java/org/apache/dolphinscheduler/plugin/task/sqoop/generator/targets/HiveTargetGenerator.java @@ -27,6 +27,7 @@ import static org.apache.dolphinscheduler.plugin.task.sqoop.SqoopConstants.HIVE_ import static org.apache.dolphinscheduler.plugin.task.sqoop.SqoopConstants.HIVE_PARTITION_KEY; import static org.apache.dolphinscheduler.plugin.task.sqoop.SqoopConstants.HIVE_PARTITION_VALUE; import static org.apache.dolphinscheduler.plugin.task.sqoop.SqoopConstants.HIVE_TABLE; +import static org.apache.dolphinscheduler.plugin.task.sqoop.SqoopConstants.TARGET_DIR; import static org.apache.dolphinscheduler.spi.task.TaskConstants.SPACE; import org.apache.dolphinscheduler.plugin.task.sqoop.generator.ITargetGenerator; @@ -91,6 +92,11 @@ public class HiveTargetGenerator implements ITargetGenerator { .append(SPACE).append(targetHiveParameter.getHivePartitionValue()); } + if (StringUtils.isNotEmpty(targetHiveParameter.getHiveTargetDir())) { + hiveTargetSb.append(SPACE).append(TARGET_DIR) + .append(SPACE).append(targetHiveParameter.getHiveTargetDir()); + } + } } catch (Exception e) { logger.error(String.format("Sqoop hive target params build failed: [%s]", e.getMessage())); diff --git a/dolphinscheduler-task-plugin/dolphinscheduler-task-sqoop/src/main/java/org/apache/dolphinscheduler/plugin/task/sqoop/parameter/targets/TargetHiveParameter.java b/dolphinscheduler-task-plugin/dolphinscheduler-task-sqoop/src/main/java/org/apache/dolphinscheduler/plugin/task/sqoop/parameter/targets/TargetHiveParameter.java index 7358de7546..9f2579fb26 100644 --- a/dolphinscheduler-task-plugin/dolphinscheduler-task-sqoop/src/main/java/org/apache/dolphinscheduler/plugin/task/sqoop/parameter/targets/TargetHiveParameter.java +++ b/dolphinscheduler-task-plugin/dolphinscheduler-task-sqoop/src/main/java/org/apache/dolphinscheduler/plugin/task/sqoop/parameter/targets/TargetHiveParameter.java @@ -54,6 +54,10 @@ public class TargetHiveParameter { * hive partition value */ private String hivePartitionValue; + /** + * hive target dir + */ + private String hiveTargetDir; public String getHiveDatabase() { return hiveDatabase; @@ -118,4 +122,12 @@ public class TargetHiveParameter { public void setHivePartitionValue(String hivePartitionValue) { this.hivePartitionValue = hivePartitionValue; } + + public String getHiveTargetDir() { + return hiveTargetDir; + } + + public void setHiveTargetDir(String hiveTargetDir) { + this.hiveTargetDir = hiveTargetDir; + } } diff --git a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sqoop.vue b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sqoop.vue index 9fedf1db24..36bc124021 100644 --- a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sqoop.vue +++ b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/tasks/sqoop.vue @@ -325,6 +325,18 @@ + +
{{$t('Hive Target Dir')}}
+
+ + +
+
{{$t('ReplaceDelimiter')}}
@@ -691,6 +703,7 @@ dropDelimiter: false, hiveOverWrite: true, replaceDelimiter: '', + hiveTargetDir: '', hivePartitionKey: '', hivePartitionValue: '' }, diff --git a/dolphinscheduler-ui/src/js/module/i18n/locale/en_US.js b/dolphinscheduler-ui/src/js/module/i18n/locale/en_US.js index 52473c8d8c..dc76585802 100755 --- a/dolphinscheduler-ui/src/js/module/i18n/locale/en_US.js +++ b/dolphinscheduler-ui/src/js/module/i18n/locale/en_US.js @@ -606,6 +606,7 @@ export default { 'Please enter Export Dir(required)': 'Please enter Export Dir(required)', 'Please enter Hive Database(required)': 'Please enter Hive Databasec(required)', 'Please enter Hive Table(required)': 'Please enter Hive Table(required)', + 'Please enter hive target dir': 'Please enter hive target dir', 'Please enter Hive Partition Keys': 'Please enter Hive Partition Key', 'Please enter Hive Partition Values': 'Please enter Partition Value', 'Please enter Replace Delimiter': 'Please enter Replace Delimiter', diff --git a/dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js b/dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js index e6f63499dc..c6d25487e9 100644 --- a/dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js +++ b/dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js @@ -606,6 +606,7 @@ export default { 'Please enter Export Dir(required)': '请输入数据源路径(必填)', 'Please enter Hive Database(required)': '请输入Hive数据库(必填)', 'Please enter Hive Table(required)': '请输入Hive表名(必填)', + 'Please enter hive target dir': '请输入Hive临时目录', 'Please enter Hive Partition Keys': '请输入分区键', 'Please enter Hive Partition Values': '请输入分区值', 'Please enter Replace Delimiter': '请输入替换分隔符',