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

leonbao pushed a commit to branch 2.0.0-release-prepare
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git


The following commit(s) were added to refs/heads/2.0.0-release-prepare by this 
push:
     new e302e51  [DS-6591][API] fix process definition import (#6592)
e302e51 is described below

commit e302e510a24aebe1aa1631e678aff07d24e46359
Author: wind <[email protected]>
AuthorDate: Tue Oct 26 17:35:06 2021 +0800

    [DS-6591][API] fix process definition import (#6592)
    
    Co-authored-by: caishunfeng <[email protected]>
---
 .../api/service/impl/ProcessDefinitionServiceImpl.java         | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 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 a138451..d4aa93e 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
@@ -849,6 +849,8 @@ public class ProcessDefinitionServiceImpl extends 
BaseServiceImpl implements Pro
         }
         String processDefinitionName = 
recursionProcessDefinitionName(projectCode, processDefinition.getName(), 1);
         processDefinition.setName(processDefinitionName + "_import_" + 
DateUtils.getCurrentTimeStamp());
+        processDefinition.setId(0);
+        processDefinition.setProjectCode(projectCode);
         processDefinition.setUserId(loginUser.getId());
         try {
             processDefinition.setCode(SnowFlakeUtils.getInstance().nextId());
@@ -892,8 +894,12 @@ public class ProcessDefinitionServiceImpl extends 
BaseServiceImpl implements Pro
         List<ProcessTaskRelationLog> taskRelationLogList = new ArrayList<>();
         for (ProcessTaskRelation processTaskRelation : taskRelationList) {
             ProcessTaskRelationLog processTaskRelationLog = new 
ProcessTaskRelationLog(processTaskRelation);
-            
processTaskRelationLog.setPreTaskCode(taskCodeMap.get(processTaskRelationLog.getPreTaskCode()));
-            
processTaskRelationLog.setPostTaskCode(taskCodeMap.get(processTaskRelationLog.getPostTaskCode()));
+            if 
(taskCodeMap.containsKey(processTaskRelationLog.getPreTaskCode())) {
+                
processTaskRelationLog.setPreTaskCode(taskCodeMap.get(processTaskRelationLog.getPreTaskCode()));
+            }
+            if 
(taskCodeMap.containsKey(processTaskRelationLog.getPostTaskCode())) {
+                
processTaskRelationLog.setPostTaskCode(taskCodeMap.get(processTaskRelationLog.getPostTaskCode()));
+            }
             processTaskRelationLog.setPreTaskVersion(Constants.VERSION_FIRST);
             processTaskRelationLog.setPostTaskVersion(Constants.VERSION_FIRST);
             taskRelationLogList.add(processTaskRelationLog);

Reply via email to