This is an automated email from the ASF dual-hosted git repository.

kerwin pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git


The following commit(s) were added to refs/heads/dev by this push:
     new d7eb745  [Fix-7070][UI] Remedy the issue with no saving the timeout's 
strategy into the database. (#7107)
d7eb745 is described below

commit d7eb7453e555309bf060809e6f6c61232be469cd
Author: Hua Jiang <[email protected]>
AuthorDate: Wed Dec 1 21:03:49 2021 +0800

    [Fix-7070][UI] Remedy the issue with no saving the timeout's strategy into 
the database. (#7107)
---
 .../dao/entity/TaskDefinition.java                 |  2 ++
 .../dag/_source/formModel/_source/timeoutAlarm.vue | 24 +++++++++++++++++-----
 2 files changed, 21 insertions(+), 5 deletions(-)

diff --git 
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinition.java
 
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinition.java
index 6dc8185..92a3fa8 100644
--- 
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinition.java
+++ 
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinition.java
@@ -33,6 +33,7 @@ import java.util.Map;
 import java.util.Objects;
 import java.util.stream.Collectors;
 
+import com.baomidou.mybatisplus.annotation.FieldStrategy;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -158,6 +159,7 @@ public class TaskDefinition {
     /**
      * timeout notify strategy
      */
+    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private TaskTimeoutStrategy timeoutNotifyStrategy;
 
     /**
diff --git 
a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/_source/timeoutAlarm.vue
 
b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/_source/timeoutAlarm.vue
index 2fece25..18b7314 100644
--- 
a/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/_source/timeoutAlarm.vue
+++ 
b/dolphinscheduler-ui/src/js/conf/home/pages/dag/_source/formModel/_source/timeoutAlarm.vue
@@ -60,7 +60,11 @@
 <script>
   import _ from 'lodash'
   import disabledState from '@/module/mixin/disabledState'
-
+  const StrategyMap = {
+    WARN: 'WARN',
+    FAILED: 'FAILED',
+    WARNFAILED: 'WARNFAILED'
+  }
   export default {
     name: 'form-timeout-alarm',
     data () {
@@ -100,10 +104,12 @@
           strategy: (() => {
             // Handling checkout sequence
             let strategy = this.strategy
-            if (strategy.length === 2 && strategy[0] === 'FAILED') {
-              return [strategy[1], strategy[0]].join(',')
+            if (strategy.length > 1) {
+              return StrategyMap.WARNFAILED
+            } else if (strategy.length === 1) {
+              return strategy[0]
             } else {
-              return strategy.join(',')
+              return ''
             }
           })(),
           interval: parseInt(this.interval),
@@ -119,7 +125,15 @@
       // Non-null objects represent backfill
       if (!_.isEmpty(o) && o.timeout) {
         this.enable = o.timeout.enable || false
-        this.strategy = _.split(o.timeout.strategy, ',') || ['WARN']
+        if (o.timeout.strategy) {
+          if (o.timeout.strategy === StrategyMap.WARNFAILED) {
+            this.strategy = [StrategyMap.WARN, StrategyMap.FAILED]
+          } else {
+            this.strategy = [o.timeout.strategy]
+          }
+        } else {
+          this.strategy = [StrategyMap.WARN]
+        }
         this.interval = o.timeout.interval || null
       }
     },

Reply via email to