This is an automated email from the ASF dual-hosted git repository. yiguolei pushed a commit to branch branch-2.1 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 25f6a733fe31fc8e7bb55bccac3fba16d098c9fb Author: zhengyu <[email protected]> AuthorDate: Sun Feb 4 14:40:59 2024 +0800 [fix](stats) keep threads in pool alive to maintain reasonable parallelism (#30451) --- .../src/main/java/org/apache/doris/common/ThreadPoolManager.java | 2 +- .../src/main/java/org/apache/doris/statistics/AnalysisManager.java | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/common/ThreadPoolManager.java b/fe/fe-core/src/main/java/org/apache/doris/common/ThreadPoolManager.java index ed3c32dba19..3be5af8ac54 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/common/ThreadPoolManager.java +++ b/fe/fe-core/src/main/java/org/apache/doris/common/ThreadPoolManager.java @@ -73,7 +73,7 @@ public class ThreadPoolManager { private static String[] poolMetricTypes = {"pool_size", "active_thread_num", "task_in_queue"}; - private static final long KEEP_ALIVE_TIME = 60L; + public static final long KEEP_ALIVE_TIME = 60L; public static void registerAllThreadPoolMetric() { for (Map.Entry<String, ThreadPoolExecutor> entry : nameToThreadPoolMap.entrySet()) { diff --git a/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisManager.java b/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisManager.java index 051dcfbb1b5..90cb0cd5f6d 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisManager.java +++ b/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisManager.java @@ -40,6 +40,7 @@ import org.apache.doris.common.Config; import org.apache.doris.common.DdlException; import org.apache.doris.common.FeConstants; import org.apache.doris.common.FeMetaVersion; +import org.apache.doris.common.ThreadPoolManager; import org.apache.doris.common.ThreadPoolManager.BlockedPolicy; import org.apache.doris.common.io.Text; import org.apache.doris.common.io.Writable; @@ -645,7 +646,8 @@ public class AnalysisManager implements Writable { String poolName = "SYNC ANALYZE THREAD POOL"; return new ThreadPoolExecutor(0, ConnectContext.get().getSessionVariable().parallelSyncAnalyzeTaskNum, - 0, TimeUnit.SECONDS, + ThreadPoolManager.KEEP_ALIVE_TIME, + TimeUnit.SECONDS, new LinkedBlockingQueue<>(), new ThreadFactoryBuilder().setDaemon(true).setNameFormat("SYNC ANALYZE" + "-%d") .build(), new BlockedPolicy(poolName, --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
