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 <[email protected]>
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

Reply via email to