From 828641ea19269959751f222afcd9e75cb5a6439d Mon Sep 17 00:00:00 2001 From: liuyehcf <1559500551@qq.com> Date: Mon, 30 Oct 2023 19:50:45 +0800 Subject: [PATCH] [Enhancement] Add config 'enable_statistics_collect_profile' to enable profile for statistics collection (#33815) Signed-off-by: liuyehcf <1559500551@qq.com> (cherry picked from commit 4a609b52a02c9dc70f179b689f21477caefae14b) --- fe/fe-core/src/main/java/com/starrocks/common/Config.java | 6 ++++++ .../java/com/starrocks/statistic/StatisticExecutor.java | 2 ++ 2 files changed, 8 insertions(+) diff --git a/fe/fe-core/src/main/java/com/starrocks/common/Config.java b/fe/fe-core/src/main/java/com/starrocks/common/Config.java index 8c8cbdd928765..3c75ca47fbff2 100644 --- a/fe/fe-core/src/main/java/com/starrocks/common/Config.java +++ b/fe/fe-core/src/main/java/com/starrocks/common/Config.java @@ -1652,6 +1652,12 @@ public class Config extends ConfigBase { @ConfField(mutable = true) public static long statistic_analyze_status_keep_second = 3 * 24 * 3600L; // 3d + /** + * Enable statistics collection profile + */ + @ConfField(mutable = true) + public static boolean enable_statistics_collect_profile = false; + /** * Check expire partition statistics data when StarRocks start up */ diff --git a/fe/fe-core/src/main/java/com/starrocks/statistic/StatisticExecutor.java b/fe/fe-core/src/main/java/com/starrocks/statistic/StatisticExecutor.java index b692df7086027..2584ab2615457 100644 --- a/fe/fe-core/src/main/java/com/starrocks/statistic/StatisticExecutor.java +++ b/fe/fe-core/src/main/java/com/starrocks/statistic/StatisticExecutor.java @@ -22,6 +22,7 @@ import com.starrocks.catalog.OlapTable; import com.starrocks.catalog.Partition; import com.starrocks.catalog.Table; +import com.starrocks.common.Config; import com.starrocks.common.Pair; import com.starrocks.common.Status; import com.starrocks.common.util.DebugUtil; @@ -261,6 +262,7 @@ public AnalyzeStatus collectStatistics(ConnectContext statsConnectCtx, Table table = statsJob.getTable(); try { + statsConnectCtx.getSessionVariable().setEnableProfile(Config.enable_statistics_collect_profile); GlobalStateMgr.getCurrentAnalyzeMgr().registerConnection(analyzeStatus.getId(), statsConnectCtx); // Only update running status without edit log, make restart job status is failed analyzeStatus.setStatus(StatsConstants.ScheduleStatus.RUNNING);