This is an automated email from the ASF dual-hosted git repository.
zouxinyi 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 05d1f4f71d8 [fix](planner) Fix table sample not take effect (#29594)
05d1f4f71d8 is described below
commit 05d1f4f71d868446956182be5773b1cb4fd847a9
Author: Xinyi Zou <[email protected]>
AuthorDate: Sat Jan 6 02:08:40 2024 +0800
[fix](planner) Fix table sample not take effect (#29594)
Modify computeSampleTabletIds location. table sample not take effect
because selectedIndexId=-1 in computeSampleTabletIds, the previous run FE UT
had special processing, so FE UT did not discover the BUG in time.
---
.../doris/nereids/glue/translator/PhysicalPlanTranslator.java | 1 -
fe/fe-core/src/main/java/org/apache/doris/planner/OlapScanNode.java | 6 ++----
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/PhysicalPlanTranslator.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/PhysicalPlanTranslator.java
index da0a58f4f37..c82590940bb 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/PhysicalPlanTranslator.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/glue/translator/PhysicalPlanTranslator.java
@@ -643,7 +643,6 @@ public class PhysicalPlanTranslator extends
DefaultPlanVisitor<PlanFragment, Pla
if (olapScan.getTableSample().isPresent()) {
olapScanNode.setTableSample(new
TableSample(olapScan.getTableSample().get().isPercent,
olapScan.getTableSample().get().sampleValue,
olapScan.getTableSample().get().seek));
- olapScanNode.computeSampleTabletIds();
}
// TODO: remove this switch?
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/planner/OlapScanNode.java
b/fe/fe-core/src/main/java/org/apache/doris/planner/OlapScanNode.java
index a300b9eab74..f812c3d0fde 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/planner/OlapScanNode.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/planner/OlapScanNode.java
@@ -555,7 +555,6 @@ public class OlapScanNode extends ScanNode {
computePartitionInfo();
}
computeTupleState(analyzer);
- computeSampleTabletIds();
/**
* Compute InAccurate cardinality before mv selector and tablet
pruning.
@@ -949,6 +948,7 @@ public class OlapScanNode extends ScanNode {
Preconditions.checkState(selectedIndexId != -1);
// compute tablet info by selected index id and selected partition ids
long start = System.currentTimeMillis();
+ computeSampleTabletIds();
computeTabletInfo();
LOG.debug("distribution prune cost: {} ms",
(System.currentTimeMillis() - start));
}
@@ -971,9 +971,7 @@ public class OlapScanNode extends ScanNode {
long selectedRows = 0;
long totalSampleRows = 0;
List<Long> selectedPartitionList = new ArrayList<>();
- if (FeConstants.runningUnitTest && selectedIndexId == -1) {
- selectedIndexId = olapTable.getBaseIndexId();
- }
+ Preconditions.checkState(selectedIndexId != -1);
for (Long partitionId : selectedPartitionIds) {
final Partition partition = olapTable.getPartition(partitionId);
final MaterializedIndex selectedIndex =
partition.getIndex(selectedIndexId);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]