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/17 09:42:32 UTC
[iotdb] 01/02: fix allSatisfy
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 97d769e83889602bf470faa6a0c06ccdd81e6462
Author: Minghui Liu <li...@foxmail.com>
AuthorDate: Mon Apr 17 17:24:08 2023 +0800
fix allSatisfy
---
.../org/apache/iotdb/tsfile/read/filter/GroupByFilter.java | 2 +-
.../apache/iotdb/tsfile/read/filter/operator/Between.java | 12 ++++++------
.../org/apache/iotdb/tsfile/read/filter/operator/Gt.java | 4 ++--
.../org/apache/iotdb/tsfile/read/filter/operator/GtEq.java | 4 ++--
.../org/apache/iotdb/tsfile/read/filter/operator/Lt.java | 4 ++--
.../org/apache/iotdb/tsfile/read/filter/operator/LtEq.java | 4 ++--
.../org/apache/iotdb/tsfile/read/filter/operator/NotEq.java | 7 +++----
.../apache/iotdb/tsfile/read/filter/operator/NotFilter.java | 4 ++--
8 files changed, 20 insertions(+), 21 deletions(-)
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/GroupByFilter.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/GroupByFilter.java
index 50dc156c1f..4542547814 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/GroupByFilter.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/GroupByFilter.java
@@ -55,7 +55,7 @@ public class GroupByFilter implements Filter, Serializable {
@Override
public boolean allSatisfy(Statistics statistics) {
- return satisfyStartEndTime(statistics.getStartTime(), statistics.getEndTime());
+ return false;
}
@Override
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Between.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Between.java
index 6277bc270c..a5ee26e95e 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Between.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Between.java
@@ -105,20 +105,20 @@ public class Between<T extends Comparable<T>> implements Filter {
if (filterType == FilterType.TIME_FILTER) {
long time1 = (Long) value1, time2 = (Long) value2;
if (not) {
- return statistics.getStartTime() < time1 || statistics.getEndTime() > time2;
+ return statistics.getStartTime() > time2 || statistics.getEndTime() < time1;
} else {
- return statistics.getEndTime() >= time1 || statistics.getStartTime() <= time2;
+ return statistics.getStartTime() >= time1 && statistics.getEndTime() <= time2;
}
} else {
if (statistics.getType() == TSDataType.TEXT || statistics.getType() == TSDataType.BOOLEAN) {
return false;
}
if (not) {
- return ((T) statistics.getMinValue()).compareTo(value1) < 0
- || ((T) statistics.getMaxValue()).compareTo(value2) > 0;
+ return ((T) statistics.getMinValue()).compareTo(value2) > 0
+ || ((T) statistics.getMaxValue()).compareTo(value1) < 0;
} else {
- return ((T) statistics.getMaxValue()).compareTo(value1) >= 0
- && ((T) statistics.getMinValue()).compareTo(value2) <= 0;
+ return ((T) statistics.getMinValue()).compareTo(value1) >= 0
+ && ((T) statistics.getMaxValue()).compareTo(value2) <= 0;
}
}
}
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Gt.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Gt.java
index 0648bbf2f5..abf9400df9 100755
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Gt.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Gt.java
@@ -55,12 +55,12 @@ public class Gt<T extends Comparable<T>> extends UnaryFilter<T> {
@Override
public boolean allSatisfy(Statistics statistics) {
if (filterType == FilterType.TIME_FILTER) {
- return ((Long) value) < statistics.getEndTime();
+ return ((Long) value) < statistics.getStartTime();
} else {
if (statistics.getType() == TSDataType.TEXT || statistics.getType() == TSDataType.BOOLEAN) {
return false;
}
- return value.compareTo((T) statistics.getMaxValue()) < 0;
+ return value.compareTo((T) statistics.getMinValue()) < 0;
}
}
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/GtEq.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/GtEq.java
index 7dcab1443c..df43f49de3 100755
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/GtEq.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/GtEq.java
@@ -55,12 +55,12 @@ public class GtEq<T extends Comparable<T>> extends UnaryFilter<T> {
@Override
public boolean allSatisfy(Statistics statistics) {
if (filterType == FilterType.TIME_FILTER) {
- return ((Long) value) <= statistics.getEndTime();
+ return ((Long) value) <= statistics.getStartTime();
} else {
if (statistics.getType() == TSDataType.TEXT || statistics.getType() == TSDataType.BOOLEAN) {
return false;
}
- return value.compareTo((T) statistics.getMaxValue()) <= 0;
+ return value.compareTo((T) statistics.getMinValue()) <= 0;
}
}
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Lt.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Lt.java
index 14d39e2fed..e4b6ef18ed 100755
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Lt.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/Lt.java
@@ -55,12 +55,12 @@ public class Lt<T extends Comparable<T>> extends UnaryFilter<T> {
@Override
public boolean allSatisfy(Statistics statistics) {
if (filterType == FilterType.TIME_FILTER) {
- return ((Long) value) > statistics.getStartTime();
+ return ((Long) value) > statistics.getEndTime();
} else {
if (statistics.getType() == TSDataType.TEXT || statistics.getType() == TSDataType.BOOLEAN) {
return false;
}
- return value.compareTo((T) statistics.getMinValue()) > 0;
+ return value.compareTo((T) statistics.getMaxValue()) > 0;
}
}
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/LtEq.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/LtEq.java
index 343a325021..028f5bc723 100755
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/LtEq.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/LtEq.java
@@ -55,12 +55,12 @@ public class LtEq<T extends Comparable<T>> extends UnaryFilter<T> {
@Override
public boolean allSatisfy(Statistics statistics) {
if (filterType == FilterType.TIME_FILTER) {
- return ((Long) value) >= statistics.getStartTime();
+ return ((Long) value) >= statistics.getEndTime();
} else {
if (statistics.getType() == TSDataType.TEXT || statistics.getType() == TSDataType.BOOLEAN) {
return false;
}
- return value.compareTo((T) statistics.getMinValue()) >= 0;
+ return value.compareTo((T) statistics.getMaxValue()) >= 0;
}
}
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/NotEq.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/NotEq.java
index 55be826df0..a301640654 100755
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/NotEq.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/NotEq.java
@@ -57,14 +57,13 @@ public class NotEq<T extends Comparable<T>> extends UnaryFilter<T> {
@Override
public boolean allSatisfy(Statistics statistics) {
if (filterType == FilterType.TIME_FILTER) {
- return !(((Long) value) == statistics.getStartTime()
- && (Long) value == statistics.getEndTime());
+ return ((Long) value) < statistics.getStartTime() || ((Long) value) > statistics.getEndTime();
} else {
if (statistics.getType() == TSDataType.TEXT || statistics.getType() == TSDataType.BOOLEAN) {
return false;
}
- return !(value.compareTo((T) statistics.getMinValue()) == 0
- && value.compareTo((T) statistics.getMaxValue()) == 0);
+ return value.compareTo((T) statistics.getMinValue()) < 0
+ || value.compareTo((T) statistics.getMaxValue()) > 0;
}
}
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/NotFilter.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/NotFilter.java
index 8d46624ff5..2bb3648a3a 100755
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/NotFilter.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/filter/operator/NotFilter.java
@@ -46,12 +46,12 @@ public class NotFilter implements Filter, Serializable {
@Override
public boolean satisfy(Statistics statistics) {
- return !that.satisfy(statistics);
+ return !that.allSatisfy(statistics);
}
@Override
public boolean allSatisfy(Statistics statistics) {
- return !that.allSatisfy(statistics);
+ return !that.satisfy(statistics);
}
@Override