You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by zh...@apache.org on 2022/08/03 11:57:27 UTC
[dolphinscheduler] 07/16: [fix-10596] Workflow relationship cannot be displayed normally (#10625)
This is an automated email from the ASF dual-hosted git repository.
zhongjiajie pushed a commit to branch 3.0.0-prepare
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
commit 1e498a5f894a86bf1f9f10600de540498dad7c3c
Author: liudi1184 <30...@users.noreply.github.com>
AuthorDate: Mon Jun 27 17:26:41 2022 +0800
[fix-10596] Workflow relationship cannot be displayed normally (#10625)
Workflow relationship cannot be displayed normally
Closes #10596
Co-authored-by: liudadi <li...@thinkingdata.cn>
(cherry picked from commit 56d3db030640881e8cf5e0c93ce25a540580b08d)
---
.../api/service/impl/WorkFlowLineageServiceImpl.java | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/WorkFlowLineageServiceImpl.java b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/WorkFlowLineageServiceImpl.java
index 08b3d221be..3b9d38ec02 100644
--- a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/WorkFlowLineageServiceImpl.java
+++ b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/WorkFlowLineageServiceImpl.java
@@ -49,6 +49,7 @@ import java.util.stream.Collectors;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
/**
* work flow lineage service impl
@@ -206,11 +207,13 @@ public class WorkFlowLineageServiceImpl extends BaseServiceImpl implements WorkF
DependentParameters dependentParameters = JSONUtils.parseObject(taskDefinitionLog.getDependence(), DependentParameters.class);
if (dependentParameters != null) {
List<DependentTaskModel> dependTaskList = dependentParameters.getDependTaskList();
- for (DependentTaskModel taskModel : dependTaskList) {
- List<DependentItem> dependItemList = taskModel.getDependItemList();
- for (DependentItem dependentItem : dependItemList) {
- if (dependentItem.getProjectCode() == projectCode && dependentItem.getDefinitionCode() != workFlowCode) {
- sourceWorkFlowCodes.add(dependentItem.getDefinitionCode());
+ if (!CollectionUtils.isEmpty(dependTaskList)) {
+ for (DependentTaskModel taskModel : dependTaskList) {
+ List<DependentItem> dependItemList = taskModel.getDependItemList();
+ for (DependentItem dependentItem : dependItemList) {
+ if (dependentItem.getProjectCode() == projectCode && dependentItem.getDefinitionCode() != workFlowCode) {
+ sourceWorkFlowCodes.add(dependentItem.getDefinitionCode());
+ }
}
}
}