This is an automated email from the ASF dual-hosted git repository.
kxiao pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.0 by this push:
new 82fde10f22c [fix](statistics)Fix column stats trigger info bug #28303
(#28304)
82fde10f22c is described below
commit 82fde10f22c12641e3d0c453c6b22a11386c20e7
Author: Jibing-Li <[email protected]>
AuthorDate: Sat Dec 16 18:39:40 2023 +0800
[fix](statistics)Fix column stats trigger info bug #28303 (#28304)
---
.../apache/doris/statistics/AnalysisManager.java | 2 --
.../apache/doris/statistics/TableStatsMeta.java | 1 +
.../suites/statistics/analyze_stats.groovy | 40 ++++++++++++++++++++++
3 files changed, 41 insertions(+), 2 deletions(-)
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 4f62c3b875a..f5c14f59fa5 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
@@ -361,8 +361,6 @@ public class AnalysisManager implements Writable {
}
recordAnalysisJob(jobInfo);
analysisJobIdToTaskMap.put(jobInfo.jobId, analysisTaskInfos);
- // TODO: maybe we should update table stats only when all task
succeeded.
- updateTableStats(jobInfo);
if (!jobInfo.scheduleType.equals(ScheduleType.PERIOD)) {
analysisTaskInfos.values().forEach(taskExecutor::submitTask);
}
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 04b9e3486b0..f500ab09f0b 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
@@ -141,6 +141,7 @@ public class TableStatsMeta implements Writable {
colStatsMeta.updatedTime = updatedTime;
colStatsMeta.analysisType = analyzedJob.analysisType;
colStatsMeta.analysisMethod = analyzedJob.analysisMethod;
+ colStatsMeta.jobType = analyzedJob.jobType;
}
}
jobType = analyzedJob.jobType;
diff --git a/regression-test/suites/statistics/analyze_stats.groovy
b/regression-test/suites/statistics/analyze_stats.groovy
index e2ea11b8364..61f18c8060c 100644
--- a/regression-test/suites/statistics/analyze_stats.groovy
+++ b/regression-test/suites/statistics/analyze_stats.groovy
@@ -1306,4 +1306,44 @@ PARTITION `p599` VALUES IN (599)
assert
"111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
[...]
+ // Test trigger type.
+ sql """DROP DATABASE IF EXISTS trigger"""
+ sql """CREATE DATABASE IF NOT EXISTS trigger"""
+ sql """USE trigger"""
+ sql """
+ CREATE TABLE if not exists trigger_test(
+ `id` int NOT NULL,
+ `name` VARCHAR(152)
+ )ENGINE=OLAP
+ DUPLICATE KEY(`id`)
+ COMMENT "OLAP"
+ DISTRIBUTED BY HASH(`id`) BUCKETS 1
+ PROPERTIES (
+ "replication_num" = "1"
+ );
+ """
+ sql """insert into trigger_test values(1,'name1') """
+ sql """analyze database trigger PROPERTIES("use.auto.analyzer"="true")"""
+
+ int i = 0;
+ for (0; i < 10; i++) {
+ def result = sql """show column stats trigger_test"""
+ if (result.size <= 0) {
+ Thread.sleep(1000)
+ continue;
+ }
+ assertEquals(result.size(), 2)
+ assertEquals(result[0][10], "SYSTEM")
+ assertEquals(result[1][10], "SYSTEM")
+ break
+ }
+ if (i < 10) {
+ sql """analyze table trigger_test with sync"""
+ def result = sql """show column stats trigger_test"""
+ assertEquals(result.size(), 2)
+ assertEquals(result[0][10], "MANUAL")
+ assertEquals(result[1][10], "MANUAL")
+ }
+ sql """DROP DATABASE IF EXISTS trigger"""
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]