sdhzwc commented on code in PR #14801:
URL:
https://github.com/apache/dolphinscheduler/pull/14801#discussion_r1361482243
##########
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TaskDefinitionServiceImpl.java:
##########
@@ -781,21 +786,53 @@ private TaskDefinitionLog updateTask(User loginUser, long
projectCode, long task
projectCode, taskCode,
taskDefinitionToUpdate.getVersion());
// update process task relation
List<ProcessTaskRelation> processTaskRelations =
processTaskRelationMapper
- .queryByTaskCode(taskDefinitionToUpdate.getCode());
+
.queryProcessTaskRelationByTaskCode(taskDefinitionToUpdate.getCode());
if (CollectionUtils.isNotEmpty(processTaskRelations)) {
+ ProcessTaskRelation taskRelation = processTaskRelations.get(0);
+ int processDefinitionVersion =
+
processDefinitionLogMapper.queryMaxVersionForDefinition(taskRelation.getProcessDefinitionCode())
+ + 1;
+ long processDefinitionCode =
taskRelation.getProcessDefinitionCode();
for (ProcessTaskRelation processTaskRelation :
processTaskRelations) {
if (taskCode == processTaskRelation.getPreTaskCode()) {
processTaskRelation.setPreTaskVersion(version);
} else if (taskCode == processTaskRelation.getPostTaskCode()) {
processTaskRelation.setPostTaskVersion(version);
}
- int count =
processTaskRelationMapper.updateProcessTaskRelationTaskVersion(processTaskRelation);
- if (count != 1) {
+
processTaskRelation.setProcessDefinitionVersion(processDefinitionVersion);
+ int update_2 =
processTaskRelationMapper.updateProcessTaskRelationTaskVersion(processTaskRelation);
+ if (update_2 != 1) {
log.error("batch update process task relation error,
projectCode:{}, taskDefinitionCode:{}.",
projectCode, taskCode);
putMsg(result,
Status.PROCESS_TASK_RELATION_BATCH_UPDATE_ERROR);
throw new
ServiceException(Status.PROCESS_TASK_RELATION_BATCH_UPDATE_ERROR);
}
+ ProcessTaskRelationLog processTaskRelationLog = new
ProcessTaskRelationLog(processTaskRelation);
+ processTaskRelationLog.setOperator(loginUser.getId());
+ processTaskRelationLog.setId(null);
+ processTaskRelationLog.setOperateTime(now);
+ int insert_2 =
processTaskRelationLogDao.insert(processTaskRelationLog);
+ if (insert_2 != 1) {
+ log.error("batch update process task relation error,
projectCode:{}, taskDefinitionCode:{}.",
+ projectCode, taskCode);
+ putMsg(result,
Status.CREATE_PROCESS_TASK_RELATION_LOG_ERROR);
+ throw new
ServiceException(Status.CREATE_PROCESS_TASK_RELATION_LOG_ERROR);
+ }
+ }
+ ProcessDefinition processDefinition =
processDefinitionMapper.queryByCode(processDefinitionCode);
+ processDefinition.setVersion(processDefinitionVersion);
+ processDefinition.setUpdateTime(now);
+ processDefinition.setUserId(loginUser.getId());
+ // update process definition
+ int update_3 =
processDefinitionMapper.updateById(processDefinition);
Review Comment:
The modification has been completed
##########
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TaskDefinitionServiceImpl.java:
##########
@@ -781,21 +786,53 @@ private TaskDefinitionLog updateTask(User loginUser, long
projectCode, long task
projectCode, taskCode,
taskDefinitionToUpdate.getVersion());
// update process task relation
List<ProcessTaskRelation> processTaskRelations =
processTaskRelationMapper
- .queryByTaskCode(taskDefinitionToUpdate.getCode());
+
.queryProcessTaskRelationByTaskCode(taskDefinitionToUpdate.getCode());
if (CollectionUtils.isNotEmpty(processTaskRelations)) {
+ ProcessTaskRelation taskRelation = processTaskRelations.get(0);
+ int processDefinitionVersion =
+
processDefinitionLogMapper.queryMaxVersionForDefinition(taskRelation.getProcessDefinitionCode())
+ + 1;
+ long processDefinitionCode =
taskRelation.getProcessDefinitionCode();
for (ProcessTaskRelation processTaskRelation :
processTaskRelations) {
if (taskCode == processTaskRelation.getPreTaskCode()) {
processTaskRelation.setPreTaskVersion(version);
} else if (taskCode == processTaskRelation.getPostTaskCode()) {
processTaskRelation.setPostTaskVersion(version);
}
- int count =
processTaskRelationMapper.updateProcessTaskRelationTaskVersion(processTaskRelation);
- if (count != 1) {
+
processTaskRelation.setProcessDefinitionVersion(processDefinitionVersion);
+ int update_2 =
processTaskRelationMapper.updateProcessTaskRelationTaskVersion(processTaskRelation);
+ if (update_2 != 1) {
log.error("batch update process task relation error,
projectCode:{}, taskDefinitionCode:{}.",
projectCode, taskCode);
putMsg(result,
Status.PROCESS_TASK_RELATION_BATCH_UPDATE_ERROR);
throw new
ServiceException(Status.PROCESS_TASK_RELATION_BATCH_UPDATE_ERROR);
}
+ ProcessTaskRelationLog processTaskRelationLog = new
ProcessTaskRelationLog(processTaskRelation);
+ processTaskRelationLog.setOperator(loginUser.getId());
+ processTaskRelationLog.setId(null);
+ processTaskRelationLog.setOperateTime(now);
+ int insert_2 =
processTaskRelationLogDao.insert(processTaskRelationLog);
+ if (insert_2 != 1) {
+ log.error("batch update process task relation error,
projectCode:{}, taskDefinitionCode:{}.",
+ projectCode, taskCode);
+ putMsg(result,
Status.CREATE_PROCESS_TASK_RELATION_LOG_ERROR);
+ throw new
ServiceException(Status.CREATE_PROCESS_TASK_RELATION_LOG_ERROR);
+ }
+ }
+ ProcessDefinition processDefinition =
processDefinitionMapper.queryByCode(processDefinitionCode);
+ processDefinition.setVersion(processDefinitionVersion);
+ processDefinition.setUpdateTime(now);
+ processDefinition.setUserId(loginUser.getId());
+ // update process definition
+ int update_3 =
processDefinitionMapper.updateById(processDefinition);
+ ProcessDefinitionLog processDefinitionLog = new
ProcessDefinitionLog(processDefinition);
+ processDefinitionLog.setOperateTime(now);
+ processDefinitionLog.setId(null);
+ processDefinitionLog.setOperator(loginUser.getId());
+ int insert_3 =
processDefinitionLogMapper.insert(processDefinitionLog);
Review Comment:
The modification has been completed
--
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]