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

lijibing 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 1f45e99b8b2 [fix](statistics)Fix partition record update rows bug. 
Remove useless code. (#37087)
1f45e99b8b2 is described below

commit 1f45e99b8b2b056e10ce31956fde3038047fa4bd
Author: Jibing-Li <64681310+jibing...@users.noreply.github.com>
AuthorDate: Tue Jul 2 12:59:18 2024 +0800

    [fix](statistics)Fix partition record update rows bug. Remove useless code. 
(#37087)
    
    Fix partition record update rows bug.
    When enable_partition_analyze set to false, we shouldn't update column's
    update rows map, only update it when enable_partition_analyze is true.
    Because when it's false, the analyze task didn't collect partition level
    stats. If we update column's update rows in this case, it will cause
    auto analyze failed to trigger partition collection because the health
    checker thought the update rows are update-to-date.
---
 .../java/org/apache/doris/analysis/AnalyzeStmt.java  |  5 -----
 .../org/apache/doris/analysis/ShowAnalyzeStmt.java   |  1 +
 .../main/java/org/apache/doris/qe/ShowExecutor.java  |  3 ++-
 .../org/apache/doris/statistics/AnalysisInfo.java    | 20 +++++++-------------
 .../apache/doris/statistics/AnalysisInfoBuilder.java | 19 +++++++++----------
 .../org/apache/doris/statistics/AnalysisManager.java | 16 ++++------------
 .../doris/statistics/StatisticsAutoCollector.java    |  2 +-
 .../org/apache/doris/statistics/TableStatsMeta.java  | 10 ++++++----
 .../apache/doris/statistics/AnalysisManagerTest.java |  2 +-
 .../doris/statistics/AnalysisTaskExecutorTest.java   |  3 ---
 .../org/apache/doris/statistics/AnalyzeTest.java     |  2 --
 .../apache/doris/statistics/HistogramTaskTest.java   |  2 --
 .../suites/statistics/test_partition_stats.groovy    |  6 +++++-
 13 files changed, 36 insertions(+), 55 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeStmt.java 
b/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeStmt.java
index 08bc1957800..e97de804376 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/AnalyzeStmt.java
@@ -20,7 +20,6 @@ package org.apache.doris.analysis;
 
 import org.apache.doris.common.AnalysisException;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisMethod;
-import org.apache.doris.statistics.AnalysisInfo.AnalysisMode;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisType;
 import org.apache.doris.statistics.AnalysisInfo.ScheduleType;
 import org.apache.doris.statistics.util.StatisticsUtil;
@@ -57,10 +56,6 @@ public class AnalyzeStmt extends StatementBase {
         return analyzeProperties.getProperties();
     }
 
-    public AnalysisMode getAnalysisMode() {
-        return analyzeProperties.isIncremental() ? AnalysisMode.INCREMENTAL : 
AnalysisMode.FULL;
-    }
-
     public AnalysisType getAnalysisType() {
         return analyzeProperties.getAnalysisType();
     }
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowAnalyzeStmt.java 
b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowAnalyzeStmt.java
index f660d6eeb3c..f015cdb0555 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowAnalyzeStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowAnalyzeStmt.java
@@ -63,6 +63,7 @@ public class ShowAnalyzeStmt extends ShowStmt {
             .add("start_time")
             .add("end_time")
             .add("priority")
+            .add("enable_partition")
             .build();
 
     private long jobId;
diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/ShowExecutor.java 
b/fe/fe-core/src/main/java/org/apache/doris/qe/ShowExecutor.java
index 62e8e6dad5e..ef75ed75193 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/ShowExecutor.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/ShowExecutor.java
@@ -2914,7 +2914,7 @@ public class ShowExecutor {
 
     private void handleShowAnalyze() {
         ShowAnalyzeStmt showStmt = (ShowAnalyzeStmt) stmt;
-        List<AnalysisInfo> results = 
Env.getCurrentEnv().getAnalysisManager().showAnalysisJob(showStmt);
+        List<AnalysisInfo> results = 
Env.getCurrentEnv().getAnalysisManager().findAnalysisJobs(showStmt);
         List<List<String>> resultRows = Lists.newArrayList();
         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd 
HH:mm:ss");
         for (AnalysisInfo analysisInfo : results) {
@@ -2951,6 +2951,7 @@ public class ShowExecutor {
                 row.add(startTime.format(formatter));
                 row.add(endTime.format(formatter));
                 row.add(analysisInfo.priority.name());
+                row.add(String.valueOf(analysisInfo.enablePartition));
                 resultRows.add(row);
             } catch (Exception e) {
                 LOG.warn("Failed to get analyze info for table {}.{}.{}, 
reason: {}",
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisInfo.java 
b/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisInfo.java
index c02455b6dca..00e8dd0bdbb 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisInfo.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisInfo.java
@@ -45,12 +45,6 @@ public class AnalysisInfo implements Writable {
 
     private static final Logger LOG = LogManager.getLogger(AnalysisInfo.class);
 
-    // TODO: useless, remove it later
-    public enum AnalysisMode {
-        INCREMENTAL,
-        FULL
-    }
-
     public enum AnalysisMethod {
         SAMPLE,
         FULL
@@ -111,9 +105,6 @@ public class AnalysisInfo implements Writable {
     @SerializedName("jobType")
     public final JobType jobType;
 
-    @SerializedName("analysisMode")
-    public final AnalysisMode analysisMode;
-
     @SerializedName("analysisMethod")
     public final AnalysisMethod analysisMethod;
 
@@ -202,15 +193,18 @@ public class AnalysisInfo implements Writable {
     @SerializedName("priority")
     public final JobPriority priority;
 
+    @SerializedName("ep")
+    public final boolean enablePartition;
+
     public AnalysisInfo(long jobId, long taskId, List<Long> taskIds, long 
catalogId, long dbId, long tblId,
             Set<Pair<String, String>> jobColumns, Set<String> partitionNames, 
String colName, Long indexId,
-            JobType jobType, AnalysisMode analysisMode, AnalysisMethod 
analysisMethod, AnalysisType analysisType,
+            JobType jobType, AnalysisMethod analysisMethod, AnalysisType 
analysisType,
             int samplePercent, long sampleRows, int maxBucketNum, long 
periodTimeInMs, String message,
             long lastExecTimeInMs, long timeCostInMs, AnalysisState state, 
ScheduleType scheduleType,
             boolean partitionOnly, boolean samplingPartition,
             boolean isAllPartition, long partitionCount, CronExpression 
cronExpression, boolean forceFull,
             boolean usingSqlForExternalTable, long tblUpdateTime, long 
rowCount, boolean userInject,
-            long updateRows, JobPriority priority, Map<Long, Long> 
partitionUpdateRows) {
+            long updateRows, JobPriority priority, Map<Long, Long> 
partitionUpdateRows, boolean enablePartition) {
         this.jobId = jobId;
         this.taskId = taskId;
         this.taskIds = taskIds;
@@ -222,7 +216,6 @@ public class AnalysisInfo implements Writable {
         this.colName = colName;
         this.indexId = indexId;
         this.jobType = jobType;
-        this.analysisMode = analysisMode;
         this.analysisMethod = analysisMethod;
         this.analysisType = analysisType;
         this.samplePercent = samplePercent;
@@ -252,6 +245,7 @@ public class AnalysisInfo implements Writable {
         if (partitionUpdateRows != null) {
             this.partitionUpdateRows.putAll(partitionUpdateRows);
         }
+        this.enablePartition = enablePartition;
     }
 
     @Override
@@ -263,7 +257,6 @@ public class AnalysisInfo implements Writable {
         sj.add("TableName: " + tblId);
         sj.add("ColumnName: " + colName);
         sj.add("TaskType: " + analysisType);
-        sj.add("TaskMode: " + analysisMode);
         sj.add("TaskMethod: " + analysisMethod);
         sj.add("Message: " + message);
         sj.add("CurrentState: " + state);
@@ -297,6 +290,7 @@ public class AnalysisInfo implements Writable {
         sj.add("userInject: " + userInject);
         sj.add("updateRows: " + updateRows);
         sj.add("priority: " + priority.name());
+        sj.add("enablePartition: " + enablePartition);
         return sj.toString();
     }
 
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisInfoBuilder.java 
b/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisInfoBuilder.java
index e8cef0f64d6..43f592629bd 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisInfoBuilder.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/statistics/AnalysisInfoBuilder.java
@@ -19,7 +19,6 @@ package org.apache.doris.statistics;
 
 import org.apache.doris.common.Pair;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisMethod;
-import org.apache.doris.statistics.AnalysisInfo.AnalysisMode;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisType;
 import org.apache.doris.statistics.AnalysisInfo.JobType;
 import org.apache.doris.statistics.AnalysisInfo.ScheduleType;
@@ -42,7 +41,6 @@ public class AnalysisInfoBuilder {
     private String colName;
     private long indexId = -1L;
     private JobType jobType;
-    private AnalysisMode analysisMode;
     private AnalysisMethod analysisMethod;
     private AnalysisType analysisType;
     private int maxBucketNum;
@@ -67,6 +65,7 @@ public class AnalysisInfoBuilder {
     private long updateRows;
     private JobPriority priority;
     private Map<Long, Long> partitionUpdateRows;
+    private boolean enablePartition;
 
     public AnalysisInfoBuilder() {
     }
@@ -83,7 +82,6 @@ public class AnalysisInfoBuilder {
         colName = info.colName;
         indexId = info.indexId;
         jobType = info.jobType;
-        analysisMode = info.analysisMode;
         analysisMethod = info.analysisMethod;
         analysisType = info.analysisType;
         samplePercent = info.samplePercent;
@@ -108,6 +106,7 @@ public class AnalysisInfoBuilder {
         updateRows = info.updateRows;
         priority = info.priority;
         partitionUpdateRows = info.partitionUpdateRows;
+        enablePartition = info.enablePartition;
     }
 
     public AnalysisInfoBuilder setJobId(long jobId) {
@@ -165,11 +164,6 @@ public class AnalysisInfoBuilder {
         return this;
     }
 
-    public AnalysisInfoBuilder setAnalysisMode(AnalysisMode analysisMode) {
-        this.analysisMode = analysisMode;
-        return this;
-    }
-
     public AnalysisInfoBuilder setAnalysisMethod(AnalysisMethod 
analysisMethod) {
         this.analysisMethod = analysisMethod;
         return this;
@@ -290,13 +284,18 @@ public class AnalysisInfoBuilder {
         return this;
     }
 
+    public AnalysisInfoBuilder setEnablePartition(boolean enablePartition) {
+        this.enablePartition = enablePartition;
+        return this;
+    }
+
     public AnalysisInfo build() {
         return new AnalysisInfo(jobId, taskId, taskIds, catalogId, dbId, 
tblId, jobColumns, partitionNames,
-                colName, indexId, jobType, analysisMode, analysisMethod, 
analysisType, samplePercent,
+                colName, indexId, jobType, analysisMethod, analysisType, 
samplePercent,
                 sampleRows, maxBucketNum, periodTimeInMs, message, 
lastExecTimeInMs, timeCostInMs, state, scheduleType,
                 partitionOnly, samplingPartition, isAllPartition, 
partitionCount,
                 cronExpression, forceFull, usingSqlForExternalTable, 
tblUpdateTime, rowCount, userInject, updateRows,
-                priority, partitionUpdateRows);
+                priority, partitionUpdateRows, enablePartition);
     }
 
 }
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 1e95adf1714..1fdd09d661f 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
@@ -63,7 +63,6 @@ import org.apache.doris.qe.ConnectContext;
 import org.apache.doris.qe.ShowResultSet;
 import org.apache.doris.qe.ShowResultSetMetaData;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisMethod;
-import org.apache.doris.statistics.AnalysisInfo.AnalysisMode;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisType;
 import org.apache.doris.statistics.AnalysisInfo.JobType;
 import org.apache.doris.statistics.AnalysisInfo.ScheduleType;
@@ -330,12 +329,12 @@ public class AnalysisManager implements Writable {
         int samplePercent = stmt.getSamplePercent();
         int sampleRows = stmt.getSampleRows();
         AnalysisType analysisType = stmt.getAnalysisType();
-        AnalysisMode analysisMode = stmt.getAnalysisMode();
         AnalysisMethod analysisMethod = stmt.getAnalysisMethod();
         ScheduleType scheduleType = stmt.getScheduleType();
         CronExpression cronExpression = stmt.getCron();
 
         infoBuilder.setJobId(jobId);
+        infoBuilder.setTaskId(-1);
         infoBuilder.setCatalogId(stmt.getCatalogId());
         infoBuilder.setDBId(stmt.getDbId());
         infoBuilder.setTblId(stmt.getTable().getId());
@@ -348,7 +347,6 @@ public class AnalysisManager implements Writable {
         infoBuilder.setState(AnalysisState.PENDING);
         infoBuilder.setLastExecTimeInMs(System.currentTimeMillis());
         infoBuilder.setAnalysisType(analysisType);
-        infoBuilder.setAnalysisMode(analysisMode);
         infoBuilder.setAnalysisMethod(analysisMethod);
         infoBuilder.setScheduleType(scheduleType);
         infoBuilder.setCronExpression(cronExpression);
@@ -385,6 +383,7 @@ public class AnalysisManager implements Writable {
         infoBuilder.setUpdateRows(tableStatsStatus == null ? 0 : 
tableStatsStatus.updatedRows.get());
         infoBuilder.setPriority(JobPriority.MANUAL);
         infoBuilder.setPartitionUpdateRows(tableStatsStatus == null ? null : 
tableStatsStatus.partitionUpdateRows);
+        
infoBuilder.setEnablePartition(StatisticsUtil.enablePartitionAnalyze());
         return infoBuilder.build();
     }
 
@@ -393,10 +392,7 @@ public class AnalysisManager implements Writable {
         if (jobInfo.scheduleType == ScheduleType.PERIOD && 
jobInfo.lastExecTimeInMs > 0) {
             return;
         }
-        // TODO: why create a new info object?
-        AnalysisInfoBuilder jobInfoBuilder = new AnalysisInfoBuilder(jobInfo);
-        AnalysisInfo analysisInfo = jobInfoBuilder.setTaskId(-1).build();
-        replayCreateAnalysisJob(analysisInfo);
+        replayCreateAnalysisJob(jobInfo);
     }
 
     public void createTaskForEachColumns(AnalysisInfo jobInfo, Map<Long, 
BaseAnalysisTask> analysisTasks,
@@ -568,11 +564,7 @@ public class AnalysisManager implements Writable {
         return result;
     }
 
-    public List<AnalysisInfo> showAnalysisJob(ShowAnalyzeStmt stmt) {
-        return findShowAnalyzeResult(stmt);
-    }
-
-    private List<AnalysisInfo> findShowAnalyzeResult(ShowAnalyzeStmt stmt) {
+    public List<AnalysisInfo> findAnalysisJobs(ShowAnalyzeStmt stmt) {
         String state = stmt.getStateValue();
         TableName tblName = stmt.getDbTableName();
         TableIf tbl = null;
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticsAutoCollector.java
 
b/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticsAutoCollector.java
index 5b02c1357cb..e0b046befc9 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticsAutoCollector.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticsAutoCollector.java
@@ -214,7 +214,6 @@ public class StatisticsAutoCollector extends MasterDaemon {
                 .setColName(stringJoiner.toString())
                 .setJobColumns(jobColumns)
                 .setAnalysisType(AnalysisInfo.AnalysisType.FUNDAMENTALS)
-                .setAnalysisMode(AnalysisInfo.AnalysisMode.INCREMENTAL)
                 .setAnalysisMethod(analysisMethod)
                 .setPartitionNames(Collections.emptySet())
                 .setSampleRows(analysisMethod.equals(AnalysisMethod.SAMPLE)
@@ -229,6 +228,7 @@ public class StatisticsAutoCollector extends MasterDaemon {
                 .setUpdateRows(tableStatsStatus == null ? 0 : 
tableStatsStatus.updatedRows.get())
                 .setPriority(priority)
                 .setPartitionUpdateRows(tableStatsStatus == null ? null : 
tableStatsStatus.partitionUpdateRows)
+                .setEnablePartition(StatisticsUtil.enablePartitionAnalyze())
                 .build();
     }
 
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/statistics/TableStatsMeta.java 
b/fe/fe-core/src/main/java/org/apache/doris/statistics/TableStatsMeta.java
index 08f2f3e71f5..4c984394f3c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/statistics/TableStatsMeta.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/statistics/TableStatsMeta.java
@@ -137,7 +137,7 @@ public class TableStatsMeta implements Writable, 
GsonPostProcessable {
             if (colStatsMeta == null) {
                 colToColStatsMeta.put(colPair, new 
ColStatsMeta(analyzedJob.createTime, analyzedJob.analysisMethod,
                         analyzedJob.analysisType, analyzedJob.jobType, 0, 
analyzedJob.rowCount,
-                        analyzedJob.updateRows, 
analyzedJob.partitionUpdateRows));
+                        analyzedJob.updateRows, analyzedJob.enablePartition ? 
analyzedJob.partitionUpdateRows : null));
             } else {
                 colStatsMeta.updatedTime = analyzedJob.tblUpdateTime;
                 colStatsMeta.analysisType = analyzedJob.analysisType;
@@ -145,10 +145,12 @@ public class TableStatsMeta implements Writable, 
GsonPostProcessable {
                 colStatsMeta.jobType = analyzedJob.jobType;
                 colStatsMeta.updatedRows = analyzedJob.updateRows;
                 colStatsMeta.rowCount = analyzedJob.rowCount;
-                if (colStatsMeta.partitionUpdateRows == null) {
-                    colStatsMeta.partitionUpdateRows = new 
ConcurrentHashMap<>();
+                if (analyzedJob.enablePartition) {
+                    if (colStatsMeta.partitionUpdateRows == null) {
+                        colStatsMeta.partitionUpdateRows = new 
ConcurrentHashMap<>();
+                    }
+                    
colStatsMeta.partitionUpdateRows.putAll(analyzedJob.partitionUpdateRows);
                 }
-                
colStatsMeta.partitionUpdateRows.putAll(analyzedJob.partitionUpdateRows);
             }
         }
         jobType = analyzedJob.jobType;
diff --git 
a/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalysisManagerTest.java 
b/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalysisManagerTest.java
index 806c5c229a5..b8be6794a09 100644
--- 
a/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalysisManagerTest.java
+++ 
b/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalysisManagerTest.java
@@ -326,7 +326,7 @@ public class AnalysisManagerTest {
             3L, new 
AnalysisInfoBuilder().setJobId(3).setJobType(JobType.SYSTEM).setState(AnalysisState.FINISHED).build());
         analysisManager.analysisJobInfoMap.put(
             4L, new 
AnalysisInfoBuilder().setJobId(4).setJobType(JobType.SYSTEM).setState(AnalysisState.FAILED).build());
-        List<AnalysisInfo> analysisInfos = 
analysisManager.showAnalysisJob(stmt);
+        List<AnalysisInfo> analysisInfos = 
analysisManager.findAnalysisJobs(stmt);
         Assertions.assertEquals(3, analysisInfos.size());
         Assertions.assertEquals(AnalysisState.RUNNING, 
analysisInfos.get(0).getState());
         Assertions.assertEquals(AnalysisState.FINISHED, 
analysisInfos.get(1).getState());
diff --git 
a/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalysisTaskExecutorTest.java
 
b/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalysisTaskExecutorTest.java
index 091ebbf7591..139f8295fbc 100644
--- 
a/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalysisTaskExecutorTest.java
+++ 
b/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalysisTaskExecutorTest.java
@@ -27,7 +27,6 @@ import org.apache.doris.common.jmockit.Deencapsulation;
 import org.apache.doris.datasource.InternalCatalog;
 import org.apache.doris.qe.StmtExecutor;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisMethod;
-import org.apache.doris.statistics.AnalysisInfo.AnalysisMode;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisType;
 import org.apache.doris.statistics.AnalysisInfo.JobType;
 import org.apache.doris.statistics.util.DBObjects;
@@ -97,7 +96,6 @@ public class AnalysisTaskExecutorTest extends 
TestWithFeService {
                 .setDBId(0)
                 .setTblId(0)
                 .setColName("col1").setJobType(JobType.MANUAL)
-                .setAnalysisMode(AnalysisMode.FULL)
                 .setAnalysisMethod(AnalysisMethod.FULL)
                 .setAnalysisType(AnalysisType.FUNDAMENTALS)
                 .build();
@@ -160,7 +158,6 @@ public class AnalysisTaskExecutorTest extends 
TestWithFeService {
         AnalysisInfo analysisInfo = new 
AnalysisInfoBuilder().setJobId(0).setTaskId(0)
                 .setCatalogId(0).setDBId(0).setTblId(0)
                 .setColName("col1").setJobType(JobType.MANUAL)
-                .setAnalysisMode(AnalysisMode.FULL)
                 .setAnalysisMethod(AnalysisMethod.FULL)
                 .setAnalysisType(AnalysisType.FUNDAMENTALS)
                 .setState(AnalysisState.RUNNING)
diff --git 
a/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalyzeTest.java 
b/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalyzeTest.java
index 250a796cee4..b41c464b9e9 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalyzeTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/statistics/AnalyzeTest.java
@@ -29,7 +29,6 @@ import org.apache.doris.qe.AutoCloseConnectContext;
 import org.apache.doris.qe.ConnectContext;
 import org.apache.doris.qe.StmtExecutor;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisMethod;
-import org.apache.doris.statistics.AnalysisInfo.AnalysisMode;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisType;
 import org.apache.doris.statistics.AnalysisInfo.JobType;
 import org.apache.doris.statistics.util.DBObjects;
@@ -167,7 +166,6 @@ public class AnalyzeTest extends TestWithFeService {
                 .setDBId(0)
                 .setTblId(0)
                 .setColName("col1").setJobType(JobType.MANUAL)
-                .setAnalysisMode(AnalysisMode.FULL)
                 .setAnalysisMethod(AnalysisMethod.FULL)
                 .setAnalysisType(AnalysisType.FUNDAMENTALS)
                 .setJobColumns(colList)
diff --git 
a/fe/fe-core/src/test/java/org/apache/doris/statistics/HistogramTaskTest.java 
b/fe/fe-core/src/test/java/org/apache/doris/statistics/HistogramTaskTest.java
index 09bf4dd94c6..a3da4c9adaa 100644
--- 
a/fe/fe-core/src/test/java/org/apache/doris/statistics/HistogramTaskTest.java
+++ 
b/fe/fe-core/src/test/java/org/apache/doris/statistics/HistogramTaskTest.java
@@ -27,7 +27,6 @@ import org.apache.doris.common.jmockit.Deencapsulation;
 import org.apache.doris.datasource.InternalCatalog;
 import org.apache.doris.qe.StmtExecutor;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisMethod;
-import org.apache.doris.statistics.AnalysisInfo.AnalysisMode;
 import org.apache.doris.statistics.AnalysisInfo.AnalysisType;
 import org.apache.doris.statistics.AnalysisInfo.JobType;
 import org.apache.doris.statistics.util.DBObjects;
@@ -118,7 +117,6 @@ public class HistogramTaskTest extends TestWithFeService {
                 .setDBId(0)
                 .setTblId(0)
                 .setColName("col1").setJobType(JobType.MANUAL)
-                .setAnalysisMode(AnalysisMode.FULL)
                 .setAnalysisMethod(AnalysisMethod.FULL)
                 .setAnalysisType(AnalysisType.HISTOGRAM)
                 .build();
diff --git a/regression-test/suites/statistics/test_partition_stats.groovy 
b/regression-test/suites/statistics/test_partition_stats.groovy
index 05216477323..e605d33ba9d 100644
--- a/regression-test/suites/statistics/test_partition_stats.groovy
+++ b/regression-test/suites/statistics/test_partition_stats.groovy
@@ -105,10 +105,14 @@ suite("test_partition_stats") {
     // Don't record partition update rows until first analyze finish.
     def result = sql """show table stats part partition(*)"""
     assertEquals(0, result.size())
-    sql """analyze table part with sync;"""
+    sql """analyze table part properties("use.auto.analyzer"="true");"""
     result = sql """show table stats part"""
     assertEquals(1, result.size())
     assertEquals("0", result[0][0])
+    result = sql """show auto analyze part"""
+    assertEquals(1, result.size())
+    assertEquals("true", result[0][15])
+
 
     // Test show cached partition stats.
     sql """analyze table part with sync;"""


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

Reply via email to