SbloodyS commented on code in PR #16910:
URL: 
https://github.com/apache/dolphinscheduler/pull/16910#discussion_r1895323359


##########
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/executor/plugin/dependent/DependentTaskTracker.java:
##########
@@ -223,12 +232,40 @@ private boolean isAllDependentTaskFinished() {
             dependentExecute.getDependResultMap().forEach((dependentKey, 
dependResult) -> {
                 if (!dependResultMap.containsKey(dependentKey)) {
                     dependResultMap.put(dependentKey, dependResult);
-                    // The log is applied in: api-server obtains the result of 
the item dependent in the dependent task
-                    // node.{@link 
ProcessInstanceServiceImpl#parseLogForDependentResult}
-                    log.info("Dependent item check finished, {} dependentKey: 
{}, result: {}, dependentDate: {}",
-                            DEPENDENT_SPLIT,
-                            dependentKey,
-                            dependResult, dependentDate);
+                    DependentItem dependentItem = new 
DependentItem().fromKey(dependentKey);
+                    WorkflowDefinition workflowDefinition = 
processDefinitionMap.get(dependentItem.getDefinitionCode());
+                    Project project = 
projectCodeMap.get(workflowDefinition.getProjectCode());
+                    TaskDependentResult taskDependentResult = new 
TaskDependentResult();
+                    
taskDependentResult.setTaskInstanceId(taskExecutionContext.getTaskInstanceId());
+                    taskDependentResult.setProjectCode(project.getCode());
+                    
taskDependentResult.setWorkflowDefinitionCode(workflowDefinition.getCode());
+                    taskDependentResult.setDependentResult(dependResult);
+                    taskDependentResult.setCreateTime(new Date());
+                    taskDependentResult.setUpdateTime(new Date());
+                    if (dependentItem.getDepTaskCode() == 
Constants.DEPENDENT_ALL_TASK_CODE) {
+                        
taskDependentResult.setTaskDefinitionCode(Constants.DEPENDENT_ALL_TASK_CODE);
+                        
taskDependentResultDao.upsertTaskDependentResult(taskDependentResult);
+                        log.info(
+                                "Dependent type all task check finished, 
DependentResult: {}, DependentDate: {}, ProjectName: {}, WorkflowName: {}, 
WorkflowCode: {}, DependentCycle: {}, DependentCycleDate: {}",
+                                dependResult, dependentDate, 
project.getName(), workflowDefinition.getName(),
+                                workflowDefinition.getCode(), 
dependentItem.getCycle(), dependentItem.getDateValue());
+                    } else if (dependentItem.getDepTaskCode() == 
Constants.DEPENDENT_WORKFLOW_CODE) {
+                        
taskDependentResult.setTaskDefinitionCode(Constants.DEPENDENT_WORKFLOW_CODE);
+                        
taskDependentResultDao.upsertTaskDependentResult(taskDependentResult);
+                        log.info(
+                                "Dependent type workflow task check finished, 
DependentResult: {}, DependentDate: {}, ProjectName: {}, WorkflowName: {}, 
WorkflowCode: {}, DependentCycle: {}, DependentCycleDate: {}",
+                                dependResult, dependentDate, 
project.getName(), workflowDefinition.getName(),
+                                workflowDefinition.getCode(), 
dependentItem.getCycle(), dependentItem.getDateValue());
+                    } else {
+                        TaskDefinition taskDefinition = 
taskDefinitionMap.get(dependentItem.getDepTaskCode());
+                        
taskDependentResult.setTaskDefinitionCode(taskDefinition.getCode());
+                        
taskDependentResultDao.upsertTaskDependentResult(taskDependentResult);

Review Comment:
   TaskInstance's app_link is used to store yarn application ids. So I think 
it's not a good idea.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to