This is an automated email from the ASF dual-hosted git repository.
zhongjiajie pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
The following commit(s) were added to refs/heads/dev by this push:
new d8db2b57d2 [fix] Task group queue query all list error (#10237)
d8db2b57d2 is described below
commit d8db2b57d22ed853232d60a6b33462fa442b838b
Author: Jiajie Zhong <[email protected]>
AuthorDate: Wed May 25 16:33:23 2022 +0800
[fix] Task group queue query all list error (#10237)
Add support query all task queue by not given specific groupId
close: #10102
---
.../api/controller/TaskGroupController.java | 17 +++++++---
.../api/service/TaskGroupQueueService.java | 11 ++++---
.../dao/mapper/TaskGroupQueueMapper.xml | 36 ++++++++++++----------
3 files changed, 39 insertions(+), 25 deletions(-)
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/TaskGroupController.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/TaskGroupController.java
index 87977b3638..ca65ac78fe 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/TaskGroupController.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/TaskGroupController.java
@@ -297,14 +297,21 @@ public class TaskGroupController extends BaseController {
/**
* query task group queue list paging
*
- * @param loginUser login user
- * @param pageNo page number
- * @param pageSize page size
+ * @param groupId ID for task group
+ * @param taskName Task Name
+ * @param processName Process instance name
+ * @param status Task queue status
+ * @param loginUser login user
+ * @param pageNo page number
+ * @param pageSize page size
* @return queue list
*/
@ApiOperation(value = "queryTasksByGroupId", notes =
"QUERY_ALL_TASKS_NOTES")
@ApiImplicitParams({
- @ApiImplicitParam(name = "groupId", value = "GROUP_ID", required =
true, dataType = "Int", example = "1"),
+ @ApiImplicitParam(name = "groupId", value = "GROUP_ID", required =
false, dataType = "Int", example = "1", defaultValue = "-1"),
+ @ApiImplicitParam(name = "taskInstanceName", value =
"TASK_INSTANCE_NAME", required = false, dataType = "String", example =
"taskName"),
+ @ApiImplicitParam(name = "processInstanceName", value =
"PROCESS_INSTANCE_NAME", required = false, dataType = "String", example =
"processName"),
+ @ApiImplicitParam(name = "status", value = "STATUS", required = false,
dataType = "Int", example = "1"),
@ApiImplicitParam(name = "pageNo", value = "PAGE_NO", required = true,
dataType = "Int", example = "1"),
@ApiImplicitParam(name = "pageSize", value = "PAGE_SIZE", required =
true, dataType = "Int", example = "20")
})
@@ -313,7 +320,7 @@ public class TaskGroupController extends BaseController {
@ApiException(QUERY_TASK_GROUP_QUEUE_LIST_ERROR)
@AccessLogAnnotation(ignoreRequestArgs = "loginUser")
public Result queryTasksByGroupId(@ApiIgnore @RequestAttribute(value =
Constants.SESSION_USER) User loginUser,
- @RequestParam("groupId") Integer groupId,
+ @RequestParam(value = "groupId",
required = false, defaultValue = "-1") Integer groupId,
@RequestParam(value =
"taskInstanceName",required = false) String taskName,
@RequestParam(value =
"processInstanceName",required = false) String processName,
@RequestParam(value = "status",required
= false) Integer status,
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/TaskGroupQueueService.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/TaskGroupQueueService.java
index 651267ebb2..e6e81d950b 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/TaskGroupQueueService.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/TaskGroupQueueService.java
@@ -28,10 +28,13 @@ public interface TaskGroupQueueService {
/**
* query tasks in task group queue by group id
- * @param loginUser login user
- * @param groupId group id
- * @param pageNo page no
- * @param pageSize page size
+ * @param loginUser login user
+ * @param groupId group id
+ * @param taskName Task Name
+ * @param processName Process instance name
+ * @param status Task queue status
+ * @param pageNo page no
+ * @param pageSize page size
* @return tasks list
*/
diff --git
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskGroupQueueMapper.xml
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskGroupQueueMapper.xml
index a780270bfd..5eacbea9b8 100644
---
a/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskGroupQueueMapper.xml
+++
b/dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskGroupQueueMapper.xml
@@ -134,22 +134,26 @@
left join t_ds_process_definition p_f on
process.process_definition_code = p_f.code
and process.process_definition_version = p_f.version
join t_ds_project as p on p_f.project_code = p.code
- where queue.group_id = #{groupId}
- <if test="taskName != null and taskName != ''">
- and task_name like concat('%', #{taskName}, '%')
- </if>
- <if test="processName != null and processName != ''">
- and process.name like concat('%', #{processName}, '%')
- </if>
- <if test="status != null">
- and queue.status =#{status}
- </if>
- <if test="projects != null and projects.size() > 0">
- and p.code in
- <foreach collection="projects" index="index" item="i" open="("
separator="," close=")">
- #{i.code}
- </foreach>
- </if>
+ <where>
+ <if test="groupId != null and groupId != -1">
+ queue.group_id = #{groupId}
+ </if>
+ <if test="taskName != null and taskName != ''">
+ and task_name like concat('%', #{taskName}, '%')
+ </if>
+ <if test="processName != null and processName != ''">
+ and process.name like concat('%', #{processName}, '%')
+ </if>
+ <if test="status != null">
+ and queue.status =#{status}
+ </if>
+ <if test="projects != null and projects.size() > 0">
+ and p.code in
+ <foreach collection="projects" index="index" item="i" open="("
separator="," close=")">
+ #{i.code}
+ </foreach>
+ </if>
+ </where>
order by queue.update_time desc
</select>