You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by hu...@apache.org on 2023/04/13 16:17:14 UTC
[iotdb] 01/04: fix queryFilter in SeriesScanUtil
This is an automated email from the ASF dual-hosted git repository.
hui pushed a commit to branch lmh/FixOffsetPushDown
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit c3230c5a691f2c7e79c0b7d74cd405d5428cf9e4
Author: liuminghui233 <54...@qq.com>
AuthorDate: Thu Apr 13 22:08:57 2023 +0800
fix queryFilter in SeriesScanUtil
---
.../db/mpp/execution/operator/source/SeriesScanOperator.java | 2 +-
.../iotdb/db/mpp/plan/planner/OperatorTreeGenerator.java | 10 ++--------
.../db/mpp/plan/planner/plan/parameter/SeriesScanOptions.java | 5 +----
3 files changed, 4 insertions(+), 13 deletions(-)
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/source/SeriesScanOperator.java b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/source/SeriesScanOperator.java
index 2a315920f2..8ed87c5074 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/source/SeriesScanOperator.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/execution/operator/source/SeriesScanOperator.java
@@ -95,7 +95,7 @@ public class SeriesScanOperator extends AbstractDataSourceOperator {
SeriesScanOptions.Builder scanOptionsBuilder = new SeriesScanOptions.Builder();
scanOptionsBuilder.withAllSensors(allSensors);
scanOptionsBuilder.withGlobalTimeFilter(timeFilter);
- scanOptionsBuilder.withQueryFilter(valueFilter);
+ scanOptionsBuilder.withQueryFilter(timeFilter);
return new SeriesScanOperator(
operatorContext,
sourceId,
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/OperatorTreeGenerator.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/OperatorTreeGenerator.java
index 4e02b1c231..e883e8edaa 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/OperatorTreeGenerator.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/OperatorTreeGenerator.java
@@ -281,13 +281,10 @@ public class OperatorTreeGenerator extends PlanVisitor<Operator, LocalExecutionP
SeriesScanOperator.class.getSimpleName());
Filter timeFilter = node.getTimeFilter();
- Filter valueFilter = node.getValueFilter();
SeriesScanOptions.Builder seriesScanOptionsBuilder = new SeriesScanOptions.Builder();
if (timeFilter != null) {
seriesScanOptionsBuilder.withGlobalTimeFilter(timeFilter.copy());
- }
- if (valueFilter != null) {
- seriesScanOptionsBuilder.withGlobalTimeFilter(valueFilter.copy());
+ seriesScanOptionsBuilder.withQueryFilter(timeFilter.copy());
}
seriesScanOptionsBuilder.withAllSensors(
context.getAllSensors(seriesPath.getDevice(), seriesPath.getMeasurement()));
@@ -323,13 +320,10 @@ public class OperatorTreeGenerator extends PlanVisitor<Operator, LocalExecutionP
AlignedSeriesScanOperator.class.getSimpleName());
Filter timeFilter = node.getTimeFilter();
- Filter valueFilter = node.getValueFilter();
SeriesScanOptions.Builder seriesScanOptionsBuilder = new SeriesScanOptions.Builder();
if (timeFilter != null) {
seriesScanOptionsBuilder.withGlobalTimeFilter(timeFilter.copy());
- }
- if (valueFilter != null) {
- seriesScanOptionsBuilder.withGlobalTimeFilter(valueFilter.copy());
+ seriesScanOptionsBuilder.withQueryFilter(timeFilter.copy());
}
seriesScanOptionsBuilder.withLimit(node.getLimit());
seriesScanOptionsBuilder.withOffset(node.getOffset());
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/SeriesScanOptions.java b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/SeriesScanOptions.java
index 7e3bcd6f29..c5032a0786 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/SeriesScanOptions.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/plan/planner/plan/parameter/SeriesScanOptions.java
@@ -29,7 +29,6 @@ import org.apache.iotdb.tsfile.read.reader.series.PaginationController;
import java.util.Collections;
import java.util.HashSet;
-import java.util.Objects;
import java.util.Set;
public class SeriesScanOptions {
@@ -50,9 +49,7 @@ public class SeriesScanOptions {
long offset,
Set<String> allSensors) {
this.globalTimeFilter = globalTimeFilter;
- if (!Objects.equals(globalTimeFilter, queryFilter)) {
- this.queryFilter = queryFilter;
- }
+ this.queryFilter = queryFilter;
this.limit = limit;
this.offset = offset;
this.allSensors = allSensors;