From d36ced0a4d7d6e4e7101b5d125166804ca21fed3 Mon Sep 17 00:00:00 2001 From: zhangdong <493738387@qq.com> Date: Mon, 25 Dec 2023 19:19:51 +0800 Subject: [PATCH 1/2] add lock for resolve pending task --- .../java/org/apache/doris/job/extensions/mtmv/MTMVTask.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java index ab9b6f9fa94211..8a19d165b5bf6a 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java +++ b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java @@ -222,12 +222,16 @@ public void before() throws JobException { @Override public void runTask() throws JobException { + LOG.info("mtmv task start run, taskId: {}", super.getTaskId()); MTMVJob job = (MTMVJob) getJobOrJobException(); try { + LOG.info("mtmv task get writeLock start, taskId: {}", super.getTaskId()); job.writeLock(); + LOG.info("mtmv task get writeLock end, taskId: {}", super.getTaskId()); super.runTask(); } finally { job.writeUnlock(); + LOG.info("mtmv task release writeLock, taskId: {}", super.getTaskId()); } } From d30da0fb031a771284d13b909a7cd1988e737081 Mon Sep 17 00:00:00 2001 From: zhangdong <493738387@qq.com> Date: Mon, 25 Dec 2023 19:22:15 +0800 Subject: [PATCH 2/2] add lock for resolve pending task --- .../org/apache/doris/job/extensions/mtmv/MTMVTask.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java index 8a19d165b5bf6a..7c11f0549ad859 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java +++ b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/mtmv/MTMVTask.java @@ -135,6 +135,7 @@ public MTMVTask(long dbId, long mtmvId, MTMVTaskContext taskContext) { @Override public void run() throws JobException { + LOG.info("mtmv task run, taskId: {}", super.getTaskId()); try { ConnectContext ctx = MTMVPlanUtil.createMTMVContext(mtmv); // Every time a task is run, the relation is regenerated because baseTables and baseViews may change, @@ -185,18 +186,21 @@ private void exec(ConnectContext ctx, Set refreshPartitionIds, Map