This is an automated email from the ASF dual-hosted git repository.
yiguolei pushed a commit to branch branch-4.0
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-4.0 by this push:
new 97315a8b8d0 branch-4.0: [opt](staticstis) use count(1) for rowCount
when scan full table #58153 (#58190)
97315a8b8d0 is described below
commit 97315a8b8d00f9e5ac0ac38e6093f8e86bbe2423
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Fri Nov 21 23:53:55 2025 +0800
branch-4.0: [opt](staticstis) use count(1) for rowCount when scan full
table #58153 (#58190)
Cherry-picked from #58153
Co-authored-by: yujun <[email protected]>
---
.../src/main/java/org/apache/doris/statistics/OlapAnalysisTask.java | 2 ++
.../test/java/org/apache/doris/statistics/OlapAnalysisTaskTest.java | 5 +++++
2 files changed, 7 insertions(+)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/statistics/OlapAnalysisTask.java
b/fe/fe-core/src/main/java/org/apache/doris/statistics/OlapAnalysisTask.java
index 6d3b5a3a40e..2f73ae87382 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/statistics/OlapAnalysisTask.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/statistics/OlapAnalysisTask.java
@@ -271,6 +271,8 @@ public class OlapAnalysisTask extends BaseAnalysisTask {
params.put("scaleFactor", "1");
params.put("sampleHints", "");
params.put("ndvFunction", "ROUND(NDV(`${colName}`) *
${scaleFactor})");
+ // For full table scan, use COUNT(1) for table row count.
+ params.put("rowCount", "COUNT(1)");
params.put("rowCount2", "(SELECT COUNT(1) FROM cte1 WHERE
`${colName}` IS NOT NULL)");
scanFullTable = true;
return;
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/statistics/OlapAnalysisTaskTest.java
b/fe/fe-core/src/test/java/org/apache/doris/statistics/OlapAnalysisTaskTest.java
index c8f9b397479..fa1879db5f3 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/statistics/OlapAnalysisTaskTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/statistics/OlapAnalysisTaskTest.java
@@ -375,6 +375,11 @@ public class OlapAnalysisTaskTest {
Assertions.assertEquals("", params.get("sampleHints"));
Assertions.assertEquals("ROUND(NDV(`${colName}`) * ${scaleFactor})",
params.get("ndvFunction"));
Assertions.assertNull(params.get("preAggHint"));
+ Assertions.assertEquals("COUNT(1)", params.get("rowCount"));
+ params.clear();
+
+ task.getSampleParams(params, 10000);
+ Assertions.assertEquals("10000", params.get("rowCount"));
params.clear();
new MockUp<OlapTable>() {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]