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 <[email protected]> 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 <[email protected]> (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()); + } } } }
