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 d2dc34e482a [Fix](statistics) Fix partition name NPE and sample for
all table during auto analyze (#28916) (#29199)
d2dc34e482a is described below
commit d2dc34e482a7329530589b9f347de2d8edad2578
Author: Jibing-Li <[email protected]>
AuthorDate: Thu Dec 28 21:23:19 2023 +0800
[Fix](statistics) Fix partition name NPE and sample for all table during
auto analyze (#28916) (#29199)
---
fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java | 2 +-
.../src/main/java/org/apache/doris/statistics/StatisticConstants.java | 2 +-
.../main/java/org/apache/doris/statistics/StatisticsAutoCollector.java | 2 +-
.../src/test/java/org/apache/doris/statistics/HMSAnalysisTaskTest.java | 2 +-
.../src/test/java/org/apache/doris/statistics/OlapAnalysisTaskTest.java | 2 +-
.../java/org/apache/doris/statistics/StatisticsAutoCollectorTest.java | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java
b/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java
index 7a17fce9cad..b64b986d78b 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java
@@ -1259,7 +1259,7 @@ public class SessionVariable implements Serializable,
Writable {
+ "When enable_auto_sample is enabled, tables"
+ "larger than this value will automatically
collect "
+ "statistics through sampling"})
- public long hugeTableLowerBoundSizeInBytes = 5L * 1024 * 1024 * 1024;
+ public long hugeTableLowerBoundSizeInBytes = 0;
@VariableMgr.VarAttr(name = HUGE_TABLE_AUTO_ANALYZE_INTERVAL_IN_MILLIS,
flag = VariableMgr.GLOBAL,
description = {"控制对大表的自动ANALYZE的最小时间间隔,"
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticConstants.java
b/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticConstants.java
index 7dae2761924..350b6b4fba5 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticConstants.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/statistics/StatisticConstants.java
@@ -86,7 +86,7 @@ public class StatisticConstants {
public static final int INSERT_MERGE_ITEM_COUNT = 200;
public static final long HUGE_TABLE_DEFAULT_SAMPLE_ROWS = 4194304;
- public static final long HUGE_TABLE_LOWER_BOUND_SIZE_IN_BYTES = 5L * 1024
* 1024 * 1024;
+ public static final long HUGE_TABLE_LOWER_BOUND_SIZE_IN_BYTES = 0;
public static final long HUGE_TABLE_AUTO_ANALYZE_INTERVAL_IN_MILLIS =
TimeUnit.HOURS.toMillis(0);
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 a15b1eec417..2c78a5f7f32 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
@@ -148,7 +148,7 @@ public class StatisticsAutoCollector extends
StatisticsCollector {
protected void createAnalyzeJobForTbl(DatabaseIf<? extends TableIf> db,
List<AnalysisInfo> analysisInfos, TableIf table) {
- AnalysisMethod analysisMethod = table.getDataSize(true) >
StatisticsUtil.getHugeTableLowerBoundSizeInBytes()
+ AnalysisMethod analysisMethod = table.getDataSize(true) >=
StatisticsUtil.getHugeTableLowerBoundSizeInBytes()
? AnalysisMethod.SAMPLE : AnalysisMethod.FULL;
AnalysisInfo jobInfo = new AnalysisInfoBuilder()
.setJobId(Env.getCurrentEnv().getNextId())
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/statistics/HMSAnalysisTaskTest.java
b/fe/fe-core/src/test/java/org/apache/doris/statistics/HMSAnalysisTaskTest.java
index a569a5cb06d..12a1a9c046b 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/statistics/HMSAnalysisTaskTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/statistics/HMSAnalysisTaskTest.java
@@ -86,7 +86,7 @@ public class HMSAnalysisTaskTest {
new MockUp<HMSExternalTable>() {
@Mock
public long getDataSize(boolean singleReplica) {
- return 1000;
+ return StatisticsUtil.getHugeTableLowerBoundSizeInBytes() - 1;
}
};
HMSAnalysisTask task = new HMSAnalysisTask();
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 5b27c79c863..e0b5a4b0478 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
@@ -101,7 +101,7 @@ public class OlapAnalysisTaskTest {
@Mock
public long getDataSize(boolean singleReplica) {
- return 1000;
+ return StatisticsUtil.getHugeTableLowerBoundSizeInBytes() - 1;
}
};
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/statistics/StatisticsAutoCollectorTest.java
b/fe/fe-core/src/test/java/org/apache/doris/statistics/StatisticsAutoCollectorTest.java
index 0c0061ff13b..cc77557c8ce 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/statistics/StatisticsAutoCollectorTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/statistics/StatisticsAutoCollectorTest.java
@@ -349,7 +349,7 @@ public class StatisticsAutoCollectorTest {
@Mock
public long getDataSize(boolean singleReplica) {
- return 1000;
+ return StatisticsUtil.getHugeTableLowerBoundSizeInBytes() - 1;
}
@Mock
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]