[fix](stats) keep threads in pool alive to maintain reasonable parallelism (#30451)

This commit is contained in:
zhengyu
2024-02-04 14:40:59 +08:00
committed by yiguolei
parent d32292b292
commit 25f6a733fe
2 changed files with 4 additions and 2 deletions

View File

@ -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()) {

View File

@ -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,