This is an automated email from the ASF dual-hosted git repository.
leonbao pushed a commit to branch json_split
in repository https://gitbox.apache.org/repos/asf/incubator-dolphinscheduler.git
The following commit(s) were added to refs/heads/json_split by this push:
new d98c2c5 [Feature][JsonSplit] Fix bug in interface of
queryProcessDefinitionList (#5043)
d98c2c5 is described below
commit d98c2c5cfe97d3c567e7a0cfc436f0924fd56a56
Author: JinyLeeChina <[email protected]>
AuthorDate: Tue Mar 16 15:44:03 2021 +0800
[Feature][JsonSplit] Fix bug in interface of queryProcessDefinitionList
(#5043)
* modify checkDAGRing and ProcessService method
* merge
* modify dagRing
* modify process instance for project home page
* fix save process bug
* codeStyle
* Fix logical bug in saving process definition
* codeSytle
* Fix bug in interface of queryProcessDefinitionList
* codeSytle
Co-authored-by: JinyLeeChina <[email protected]>
---
.../service/impl/ProcessDefinitionServiceImpl.java | 7 +---
.../apache/dolphinscheduler/common/Constants.java | 5 +++
.../dolphinscheduler/common/model/TaskNode.java | 8 +++--
.../dao/entity/ProcessTaskRelation.java | 19 +++++++++++
.../dao/entity/ProcessTaskRelationLog.java | 4 +++
.../dao/entity/TaskDefinition.java | 39 +++++++++++++++++++++-
.../dao/entity/TaskDefinitionLog.java | 7 ++++
.../dao/mapper/ProcessDefinitionMapper.xml | 2 +-
.../service/process/ProcessService.java | 4 +--
sql/dolphinscheduler_mysql.sql | 4 +--
10 files changed, 85 insertions(+), 14 deletions(-)
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ProcessDefinitionServiceImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ProcessDefinitionServiceImpl.java
index 56f71ae..52cea41 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ProcessDefinitionServiceImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ProcessDefinitionServiceImpl.java
@@ -270,12 +270,7 @@ public class ProcessDefinitionServiceImpl extends
BaseServiceImpl implements Pro
IPage<ProcessDefinition> processDefinitionIPage =
processDefinitionMapper.queryDefineListPaging(
page, searchVal, userId, project.getCode(),
isAdmin(loginUser));
- List<ProcessDefinition> records = processDefinitionIPage.getRecords();
- records.forEach(processDefinition -> {
- ProcessData processData =
processService.genProcessData(processDefinition);
-
processDefinition.setProcessDefinitionJson(JSONUtils.toJsonString(processData));
- });
- processDefinitionIPage.setRecords(records);
+ processDefinitionIPage.setRecords(processDefinitionIPage.getRecords());
PageInfo<ProcessDefinition> pageInfo = new PageInfo<>(pageNo,
pageSize);
pageInfo.setTotalCount((int) processDefinitionIPage.getTotal());
diff --git
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
index f0f76d5..192ccd2 100644
---
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
+++
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
@@ -419,6 +419,11 @@ public final class Constants {
public static final String FLOWNODE_RUN_FLAG_FORBIDDEN = "FORBIDDEN";
/**
+ * normal running task
+ */
+ public static final String FLOWNODE_RUN_FLAG_NORMAL = "NORMAL";
+
+ /**
* datasource configuration path
*/
public static final String DATASOURCE_PROPERTIES =
"/datasource.properties";
diff --git
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/model/TaskNode.java
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/model/TaskNode.java
index 036d175..1e338d9 100644
---
a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/model/TaskNode.java
+++
b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/model/TaskNode.java
@@ -387,6 +387,8 @@ public class TaskNode {
public String toString() {
return "TaskNode{"
+ "id='" + id + '\''
+ + ", code=" + code
+ + ", version=" + version
+ ", name='" + name + '\''
+ ", desc='" + desc + '\''
+ ", type='" + type + '\''
@@ -396,14 +398,16 @@ public class TaskNode {
+ ", retryInterval=" + retryInterval
+ ", params='" + params + '\''
+ ", preTasks='" + preTasks + '\''
+ + ", preTaskNodeList=" + preTaskNodeList
+ ", extras='" + extras + '\''
+ ", depList=" + depList
+ ", dependence='" + dependence + '\''
+ + ", conditionResult='" + conditionResult + '\''
+ ", taskInstancePriority=" + taskInstancePriority
- + ", timeout='" + timeout + '\''
+ ", workerGroup='" + workerGroup + '\''
+ + ", workerGroupId=" + workerGroupId
+ + ", timeout='" + timeout + '\''
+ ", delayTime=" + delayTime
+ '}';
}
-
}
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessTaskRelation.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessTaskRelation.java
index 2afeb68..1dae5d8 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessTaskRelation.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessTaskRelation.java
@@ -232,4 +232,23 @@ public class ProcessTaskRelation {
public void setPostTaskVersion(int postTaskVersion) {
this.postTaskVersion = postTaskVersion;
}
+
+ @Override
+ public String toString() {
+ return "ProcessTaskRelation{"
+ + "id=" + id
+ + ", name='" + name + '\''
+ + ", processDefinitionVersion=" + processDefinitionVersion
+ + ", projectCode=" + projectCode
+ + ", processDefinitionCode=" + processDefinitionCode
+ + ", preTaskCode=" + preTaskCode
+ + ", preTaskVersion=" + preTaskVersion
+ + ", postTaskCode=" + postTaskCode
+ + ", postTaskVersion=" + postTaskVersion
+ + ", conditionType=" + conditionType
+ + ", conditionParams='" + conditionParams + '\''
+ + ", createTime=" + createTime
+ + ", updateTime=" + updateTime
+ + '}';
+ }
}
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessTaskRelationLog.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessTaskRelationLog.java
index 5d460e2..ae6ab5a 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessTaskRelationLog.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/ProcessTaskRelationLog.java
@@ -77,4 +77,8 @@ public class ProcessTaskRelationLog extends
ProcessTaskRelation {
this.operateTime = operateTime;
}
+ @Override
+ public String toString() {
+ return super.toString();
+ }
}
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 fe7145a..03cab2d 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
@@ -24,7 +24,6 @@ import org.apache.dolphinscheduler.common.enums.TimeoutFlag;
import org.apache.dolphinscheduler.common.process.Property;
import org.apache.dolphinscheduler.common.utils.JSONUtils;
-import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -257,6 +256,14 @@ public class TaskDefinition {
}
+ public void setTaskParamList(List<Property> taskParamList) {
+ this.taskParamList = taskParamList;
+ }
+
+ public void setTaskParamMap(Map<String, String> taskParamMap) {
+ this.taskParamMap = taskParamMap;
+ }
+
public Map<String, String> getTaskParamMap() {
if (taskParamMap == null && StringUtils.isNotEmpty(taskParams)) {
List<Property> propList =
JSONUtils.toList(JSONUtils.parseObject(taskParams).findValue("localParams").toString(),
@@ -369,4 +376,34 @@ public class TaskDefinition {
public void setResourceIds(String resourceIds) {
this.resourceIds = resourceIds;
}
+
+ @Override
+ public String toString() {
+ return "TaskDefinition{"
+ + "id=" + id
+ + ", code=" + code
+ + ", name='" + name + '\''
+ + ", version=" + version
+ + ", description='" + description + '\''
+ + ", projectCode=" + projectCode
+ + ", userId=" + userId
+ + ", taskType=" + taskType
+ + ", taskParams='" + taskParams + '\''
+ + ", taskParamList=" + taskParamList
+ + ", taskParamMap=" + taskParamMap
+ + ", flag=" + flag
+ + ", taskPriority=" + taskPriority
+ + ", userName='" + userName + '\''
+ + ", projectName='" + projectName + '\''
+ + ", workerGroup='" + workerGroup + '\''
+ + ", failRetryTimes=" + failRetryTimes
+ + ", failRetryInterval=" + failRetryInterval
+ + ", timeoutFlag=" + timeoutFlag
+ + ", timeoutNotifyStrategy=" + timeoutNotifyStrategy
+ + ", timeout=" + timeout
+ + ", resourceIds='" + resourceIds + '\''
+ + ", createTime=" + createTime
+ + ", updateTime=" + updateTime
+ + '}';
+ }
}
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinitionLog.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinitionLog.java
index a1770b4..c1da572 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinitionLog.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/TaskDefinitionLog.java
@@ -57,6 +57,8 @@ public class TaskDefinitionLog extends TaskDefinition {
this.setProjectName(taskDefinition.getProjectName());
this.setResourceIds(taskDefinition.getResourceIds());
this.setTaskParams(taskDefinition.getTaskParams());
+ this.setTaskParamList(taskDefinition.getTaskParamList());
+ this.setTaskParamMap(taskDefinition.getTaskParamMap());
this.setTaskPriority(taskDefinition.getTaskPriority());
this.setTimeoutNotifyStrategy(taskDefinition.getTimeoutNotifyStrategy());
this.setTaskType(taskDefinition.getTaskType());
@@ -84,4 +86,9 @@ public class TaskDefinitionLog extends TaskDefinition {
public void setOperateTime(Date operateTime) {
this.operateTime = operateTime;
}
+
+ @Override
+ public String toString() {
+ return super.toString();
+ }
}
diff --git
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/ProcessDefinitionMapper.xml
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/ProcessDefinitionMapper.xml
index afafa82..c68477c 100644
---
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/ProcessDefinitionMapper.xml
+++
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/ProcessDefinitionMapper.xml
@@ -71,7 +71,7 @@
and pd.name = #{processDefinitionName}
</select>
<select id="queryDefineListPaging"
resultType="org.apache.dolphinscheduler.dao.entity.ProcessDefinition">
- SELECT td.id, td.name, td.version, td.release_state, td.project_code,
td.user_id, td.description,
+ SELECT td.id, td.code, td.name, td.version, td.release_state,
td.project_code, td.user_id, td.description,
td.global_params, td.flag, td.warning_group_id, td.timeout,
td.tenant_id, td.update_time, td.create_time,
sc.schedule_release_state, tu.user_name
FROM t_ds_process_definition td
diff --git
a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/process/ProcessService.java
b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/process/ProcessService.java
index c14038f..abeb668 100644
---
a/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/process/ProcessService.java
+++
b/dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/process/ProcessService.java
@@ -2453,7 +2453,7 @@ public class ProcessService {
v.setName(taskDefinitionLog.getName());
v.setDesc(taskDefinitionLog.getDescription());
v.setType(taskDefinitionLog.getTaskType().getDescp().toUpperCase());
- v.setRunFlag(taskDefinitionLog.getFlag() == Flag.YES ?
Constants.FLOWNODE_RUN_FLAG_FORBIDDEN : "NORMAL");
+ v.setRunFlag(taskDefinitionLog.getFlag() == Flag.YES ?
Constants.FLOWNODE_RUN_FLAG_NORMAL : Constants.FLOWNODE_RUN_FLAG_FORBIDDEN);
v.setMaxRetryTimes(taskDefinitionLog.getFailRetryTimes());
v.setRetryInterval(taskDefinitionLog.getFailRetryInterval());
v.setParams(taskDefinitionLog.getTaskParams());
@@ -2464,7 +2464,7 @@ public class ProcessService {
taskDefinitionLog.getTimeout())));
// TODO name will be remove
v.getPreTaskNodeList().forEach(task ->
task.setName(taskDefinitionLogMap.get(task.getCode()).getName()));
-
v.setPreTasks(StringUtils.join(v.getPreTaskNodeList().stream().map(PreviousTaskNode::getName).collect(Collectors.toList()),
","));
+
v.setPreTasks(JSONUtils.toJsonString(v.getPreTaskNodeList().stream().map(PreviousTaskNode::getName).collect(Collectors.toList())));
});
return new ArrayList<>(taskNodeMap.values());
}
diff --git a/sql/dolphinscheduler_mysql.sql b/sql/dolphinscheduler_mysql.sql
index 2fe9614..8158b54 100644
--- a/sql/dolphinscheduler_mysql.sql
+++ b/sql/dolphinscheduler_mysql.sql
@@ -462,7 +462,7 @@ CREATE TABLE `t_ds_task_definition` (
`worker_group` varchar(200) DEFAULT NULL COMMENT 'worker grouping',
`fail_retry_times` int(11) DEFAULT NULL COMMENT 'number of failed retries',
`fail_retry_interval` int(11) DEFAULT NULL COMMENT 'failed retry interval',
- `timeout_flag` tinyint(1) DEFAULT '0' COMMENT 'timeout flag:0 close, 1 open',
+ `timeout_flag` tinyint(2) DEFAULT '0' COMMENT 'timeout flag:0 close, 1 open',
`timeout_notify_strategy` tinyint(4) DEFAULT NULL COMMENT 'timeout
notification policy: 0 warning, 1 fail',
`timeout` int(11) DEFAULT '0' COMMENT 'timeout length,unit: minute',
`resource_ids` varchar(255) DEFAULT NULL COMMENT 'resource id, separated by
comma',
@@ -491,7 +491,7 @@ CREATE TABLE `t_ds_task_definition_log` (
`worker_group` varchar(200) DEFAULT NULL COMMENT 'worker grouping',
`fail_retry_times` int(11) DEFAULT NULL COMMENT 'number of failed retries',
`fail_retry_interval` int(11) DEFAULT NULL COMMENT 'failed retry interval',
- `timeout_flag` tinyint(1) DEFAULT '0' COMMENT 'timeout flag:0 close, 1 open',
+ `timeout_flag` tinyint(2) DEFAULT '0' COMMENT 'timeout flag:0 close, 1 open',
`timeout_notify_strategy` tinyint(4) DEFAULT NULL COMMENT 'timeout
notification policy: 0 warning, 1 fail',
`timeout` int(11) DEFAULT '0' COMMENT 'timeout length,unit: minute',
`resource_ids` varchar(255) DEFAULT NULL COMMENT 'resource id, separated by
comma',