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;