You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by yi...@apache.org on 2023/06/21 16:41:50 UTC

[doris] branch master updated: [Improve](load)Solve the problem of RoutineLoadTaskScheduler idling when there is no data (#20986)

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

yiguolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new b192082b62 [Improve](load)Solve the problem of RoutineLoadTaskScheduler idling when there is no data (#20986)
b192082b62 is described below

commit b192082b62cb33e3f680c3d2d597f57ac37877e3
Author: Calvin Kirs <ac...@163.com>
AuthorDate: Thu Jun 22 00:41:45 2023 +0800

    [Improve](load)Solve the problem of RoutineLoadTaskScheduler idling when there is no data (#20986)
    
    Since the polling interval is 0, the CPU will be polled all the time when there is no data
    
    Before and after comparison test, the CPU usage time is reduced by 2000 times
---
 .../org/apache/doris/load/routineload/RoutineLoadTaskScheduler.java   | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/fe/fe-core/src/main/java/org/apache/doris/load/routineload/RoutineLoadTaskScheduler.java b/fe/fe-core/src/main/java/org/apache/doris/load/routineload/RoutineLoadTaskScheduler.java
index 94f5d4388f..f8b4ed9119 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/load/routineload/RoutineLoadTaskScheduler.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/load/routineload/RoutineLoadTaskScheduler.java
@@ -72,7 +72,9 @@ public class RoutineLoadTaskScheduler extends MasterDaemon {
     }
 
     public RoutineLoadTaskScheduler(RoutineLoadManager routineLoadManager) {
-        super("Routine load task scheduler", 0);
+        //Set the polling interval to 1ms to avoid meaningless idling when there is no data, resulting in increased CPU.
+        // The wait/notify mechanism should be used later
+        super("Routine load task scheduler", 1);
         this.routineLoadManager = routineLoadManager;
     }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org