This is an automated email from the ASF dual-hosted git repository.

jackietien pushed a commit to branch rc/1.3.3
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/rc/1.3.3 by this push:
     new 4134d6fbbd1 [To rc/1.3.3]Adaptation of Filter generated by FreeMarker 
in TsFile
4134d6fbbd1 is described below

commit 4134d6fbbd1f991001b11768ded9629da6910ad2
Author: yuyong <[email protected]>
AuthorDate: Tue Aug 13 17:44:22 2024 +0800

    [To rc/1.3.3]Adaptation of Filter generated by FreeMarker in TsFile
---
 .github/workflows/cluster-it-1c1d.yml              |  2 +
 .github/workflows/cluster-it-1c3d.yml              |  2 +
 .github/workflows/pipe-it-2cluster.yml             |  2 +
 .github/workflows/sonar-codecov.yml                |  2 +
 .github/workflows/unit-test.yml                    |  2 +
 .../predicate/ConvertPredicateToFilterVisitor.java | 55 ++++++++++++----------
 .../reader/chunk/AlignedMemPageReaderTest.java     | 38 ++++++++++-----
 .../read/reader/chunk/MemPageReaderTest.java       |  6 ++-
 .../AlignedSeriesScanPredicatePushDownTest.java    |  4 +-
 .../series/SeriesScanPredicatePushDownTest.java    | 27 +++++++++--
 pom.xml                                            |  2 +-
 11 files changed, 95 insertions(+), 47 deletions(-)

diff --git a/.github/workflows/cluster-it-1c1d.yml 
b/.github/workflows/cluster-it-1c1d.yml
index 5b1c3e19667..48900e54314 100644
--- a/.github/workflows/cluster-it-1c1d.yml
+++ b/.github/workflows/cluster-it-1c1d.yml
@@ -6,6 +6,7 @@ on:
       - master
       - 'rel/1.*'
       - pipe-meta-sync
+      - 'rc/1.*'
     paths-ignore:
       - 'docs/**'
       - 'site/**'
@@ -14,6 +15,7 @@ on:
       - master
       - 'rel/1.*'
       - pipe-meta-sync
+      - 'rc/1.*'
     paths-ignore:
       - 'docs/**'
       - 'site/**'
diff --git a/.github/workflows/cluster-it-1c3d.yml 
b/.github/workflows/cluster-it-1c3d.yml
index a850009e6f6..0a8607dba0f 100644
--- a/.github/workflows/cluster-it-1c3d.yml
+++ b/.github/workflows/cluster-it-1c3d.yml
@@ -6,6 +6,7 @@ on:
       - master
       - 'rel/1.*'
       - pipe-meta-sync
+      - 'rc/1.*'
     paths-ignore:
       - 'docs/**'
       - 'site/**'
@@ -14,6 +15,7 @@ on:
       - master
       - 'rel/1.*'
       - pipe-meta-sync
+      - 'rc/1.*'
     paths-ignore:
       - 'docs/**'
       - 'site/**'
diff --git a/.github/workflows/pipe-it-2cluster.yml 
b/.github/workflows/pipe-it-2cluster.yml
index 676fae32d51..e19a4b2f9ef 100644
--- a/.github/workflows/pipe-it-2cluster.yml
+++ b/.github/workflows/pipe-it-2cluster.yml
@@ -5,6 +5,7 @@ on:
     branches:
       - master
       - 'rel/1.*'
+      - 'rc/1.*'
     paths-ignore:
       - 'docs/**'
       - 'site/**'
@@ -12,6 +13,7 @@ on:
     branches:
       - master
       - 'rel/1.*'
+      - 'rc/1.*'
     paths-ignore:
       - 'docs/**'
       - 'site/**'
diff --git a/.github/workflows/sonar-codecov.yml 
b/.github/workflows/sonar-codecov.yml
index 1c5c4827401..b20bdeb0aaa 100644
--- a/.github/workflows/sonar-codecov.yml
+++ b/.github/workflows/sonar-codecov.yml
@@ -8,6 +8,7 @@ on:
     branches:
       - master
       - "rel/*"
+      - "rc/*"
     paths-ignore:
       - "docs/**"
       - 'site/**'
@@ -16,6 +17,7 @@ on:
       - master
       - "rel/*"
       - "new_*"
+      - "rc/*"
     paths-ignore:
       - "docs/**"
       - 'site/**'
diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml
index 2379c66efe8..ac9e4b38a32 100644
--- a/.github/workflows/unit-test.yml
+++ b/.github/workflows/unit-test.yml
@@ -9,6 +9,7 @@ on:
       - master
       - 'rel/*'
       - pipe-meta-sync
+      - "rc/*"
     paths-ignore:
       - 'docs/**'
       - 'site/**'
@@ -17,6 +18,7 @@ on:
       - master
       - 'rel/*'
       - pipe-meta-sync
+      - "rc/*"
     paths-ignore:
       - 'docs/**'
       - 'site/**'
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/predicate/ConvertPredicateToFilterVisitor.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/predicate/ConvertPredicateToFilterVisitor.java
index 688668e568a..3aba8d479e7 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/predicate/ConvertPredicateToFilterVisitor.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/predicate/ConvertPredicateToFilterVisitor.java
@@ -49,7 +49,6 @@ import org.apache.tsfile.enums.TSDataType;
 import org.apache.tsfile.read.filter.basic.Filter;
 import org.apache.tsfile.read.filter.factory.FilterFactory;
 import org.apache.tsfile.read.filter.factory.ValueFilterApi;
-import org.apache.tsfile.read.filter.operator.ValueFilterOperators;
 import org.apache.tsfile.utils.Binary;
 import org.apache.tsfile.write.schema.IMeasurementSchema;
 
@@ -106,18 +105,20 @@ public class ConvertPredicateToFilterVisitor
     }
   }
 
-  private <T extends Comparable<T>> ValueFilterOperators.ValueNotIn<T> 
constructNotInFilter(
+  private <T extends Comparable<T>> Filter constructNotInFilter(
       PartialPath path, Set<String> stringValues, Context context) {
     int measurementIndex = context.getMeasurementIndex(path.getMeasurement());
-    Set<T> values = constructInSet(stringValues, context.getType(path));
-    return ValueFilterApi.notIn(measurementIndex, values);
+    TSDataType dataType = context.getType(path);
+    Set<T> values = constructInSet(stringValues, dataType);
+    return ValueFilterApi.notIn(measurementIndex, values, dataType);
   }
 
-  private <T extends Comparable<T>> ValueFilterOperators.ValueIn<T> 
constructInFilter(
+  private <T extends Comparable<T>> Filter constructInFilter(
       PartialPath path, Set<String> stringValues, Context context) {
     int measurementIndex = context.getMeasurementIndex(path.getMeasurement());
-    Set<T> values = constructInSet(stringValues, context.getType(path));
-    return ValueFilterApi.in(measurementIndex, values);
+    TSDataType dataType = context.getType(path);
+    Set<T> values = constructInSet(stringValues, dataType);
+    return ValueFilterApi.in(measurementIndex, values, dataType);
   }
 
   private <T extends Comparable<T>> Set<T> constructInSet(
@@ -154,12 +155,13 @@ public class ConvertPredicateToFilterVisitor
     }
 
     
checkArgument(operand.getExpressionType().equals(ExpressionType.TIMESERIES));
-    int measurementIndex =
-        context.getMeasurementIndex(((TimeSeriesOperand) 
operand).getPath().getMeasurement());
+    PartialPath path = ((TimeSeriesOperand) operand).getPath();
+    TSDataType dataType = context.getType(path);
+    int measurementIndex = context.getMeasurementIndex(path.getMeasurement());
     if (likeExpression.isNot()) {
-      return ValueFilterApi.notLike(measurementIndex, 
likeExpression.getPattern());
+      return ValueFilterApi.notLike(measurementIndex, 
likeExpression.getPattern(), dataType);
     } else {
-      return ValueFilterApi.like(measurementIndex, 
likeExpression.getPattern());
+      return ValueFilterApi.like(measurementIndex, 
likeExpression.getPattern(), dataType);
     }
   }
 
@@ -171,12 +173,13 @@ public class ConvertPredicateToFilterVisitor
     }
 
     
checkArgument(operand.getExpressionType().equals(ExpressionType.TIMESERIES));
-    int measurementIndex =
-        context.getMeasurementIndex(((TimeSeriesOperand) 
operand).getPath().getMeasurement());
+    PartialPath path = ((TimeSeriesOperand) operand).getPath();
+    TSDataType dataType = context.getType(path);
+    int measurementIndex = context.getMeasurementIndex(path.getMeasurement());
     if (regularExpression.isNot()) {
-      return ValueFilterApi.notRegexp(measurementIndex, 
regularExpression.getPattern());
+      return ValueFilterApi.notRegexp(measurementIndex, 
regularExpression.getPattern(), dataType);
     } else {
-      return ValueFilterApi.regexp(measurementIndex, 
regularExpression.getPattern());
+      return ValueFilterApi.regexp(measurementIndex, 
regularExpression.getPattern(), dataType);
     }
   }
 
@@ -256,20 +259,20 @@ public class ConvertPredicateToFilterVisitor
     PartialPath path = ((TimeSeriesOperand) timeseriesOperand).getPath();
     int measurementIndex = context.getMeasurementIndex(path.getMeasurement());
     T value = getValue(((ConstantOperand) constantOperand).getValueString(), 
context.getType(path));
-
+    TSDataType dataType = context.getType(path);
     switch (expressionType) {
       case EQUAL_TO:
-        return ValueFilterApi.eq(measurementIndex, value);
+        return ValueFilterApi.eq(measurementIndex, value, dataType);
       case NON_EQUAL:
-        return ValueFilterApi.notEq(measurementIndex, value);
+        return ValueFilterApi.notEq(measurementIndex, value, dataType);
       case GREATER_THAN:
-        return ValueFilterApi.gt(measurementIndex, value);
+        return ValueFilterApi.gt(measurementIndex, value, dataType);
       case GREATER_EQUAL:
-        return ValueFilterApi.gtEq(measurementIndex, value);
+        return ValueFilterApi.gtEq(measurementIndex, value, dataType);
       case LESS_THAN:
-        return ValueFilterApi.lt(measurementIndex, value);
+        return ValueFilterApi.lt(measurementIndex, value, dataType);
       case LESS_EQUAL:
-        return ValueFilterApi.ltEq(measurementIndex, value);
+        return ValueFilterApi.ltEq(measurementIndex, value, dataType);
       default:
         throw new UnsupportedOperationException(
             String.format("Unsupported expression type %s", expressionType));
@@ -326,12 +329,12 @@ public class ConvertPredicateToFilterVisitor
 
     if (minValue == maxValue) {
       return isNot
-          ? ValueFilterApi.notEq(measurementIndex, minValue)
-          : ValueFilterApi.eq(measurementIndex, minValue);
+          ? ValueFilterApi.notEq(measurementIndex, minValue, dataType)
+          : ValueFilterApi.eq(measurementIndex, minValue, dataType);
     }
     return isNot
-        ? ValueFilterApi.notBetween(measurementIndex, minValue, maxValue)
-        : ValueFilterApi.between(measurementIndex, minValue, maxValue);
+        ? ValueFilterApi.notBetween(measurementIndex, minValue, maxValue, 
dataType)
+        : ValueFilterApi.between(measurementIndex, minValue, maxValue, 
dataType);
   }
 
   @SuppressWarnings("unchecked")
diff --git 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/AlignedMemPageReaderTest.java
 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/AlignedMemPageReaderTest.java
index 7f1af66ad05..28c78226417 100644
--- 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/AlignedMemPageReaderTest.java
+++ 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/AlignedMemPageReaderTest.java
@@ -38,6 +38,8 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.Optional;
 
+import static 
org.apache.tsfile.read.filter.factory.ValueFilterApi.DEFAULT_MEASUREMENT_INDEX;
+
 public class AlignedMemPageReaderTest {
 
   private static final TsBlock tsBlock1;
@@ -138,13 +140,15 @@ public class AlignedMemPageReaderTest {
     Filter globalTimeFilter = TimeFilterApi.gtEq(0L);
     MemAlignedPageReader alignedPageReader1 = generateAlignedPageReader();
     alignedPageReader1.addRecordFilter(globalTimeFilter);
-    alignedPageReader1.addRecordFilter(ValueFilterApi.gtEq(50));
+    alignedPageReader1.addRecordFilter(
+        ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 50, TSDataType.INT32));
     TsBlock tsBlock1 = alignedPageReader1.getAllSatisfiedData();
     Assert.assertEquals(50, tsBlock1.getPositionCount());
 
     MemAlignedPageReader alignedPageReader2 = 
generateSingleColumnAlignedPageReader();
     alignedPageReader2.addRecordFilter(globalTimeFilter);
-    alignedPageReader2.addRecordFilter(ValueFilterApi.gtEq(50));
+    alignedPageReader2.addRecordFilter(
+        ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 50, TSDataType.INT32));
     TsBlock tsBlock2 = alignedPageReader2.getAllSatisfiedData();
     Assert.assertEquals(40, tsBlock2.getPositionCount());
   }
@@ -154,7 +158,8 @@ public class AlignedMemPageReaderTest {
     Filter globalTimeFilter = TimeFilterApi.gtEq(0L);
     MemAlignedPageReader alignedPageReader1 = generateAlignedPageReader();
     alignedPageReader1.addRecordFilter(globalTimeFilter);
-    alignedPageReader1.addRecordFilter(ValueFilterApi.gtEq(50));
+    alignedPageReader1.addRecordFilter(
+        ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 50, TSDataType.INT32));
     alignedPageReader1.setLimitOffset(new PaginationController(10, 10));
     TsBlock tsBlock1 = alignedPageReader1.getAllSatisfiedData();
     Assert.assertEquals(10, tsBlock1.getPositionCount());
@@ -163,7 +168,8 @@ public class AlignedMemPageReaderTest {
 
     MemAlignedPageReader alignedPageReader2 = 
generateSingleColumnAlignedPageReader();
     alignedPageReader2.addRecordFilter(globalTimeFilter);
-    alignedPageReader2.addRecordFilter(ValueFilterApi.gtEq(50));
+    alignedPageReader2.addRecordFilter(
+        ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 50, TSDataType.INT32));
     alignedPageReader2.setLimitOffset(new PaginationController(10, 10));
     TsBlock tsBlock2 = alignedPageReader2.getAllSatisfiedData();
     Assert.assertEquals(10, tsBlock2.getPositionCount());
@@ -176,13 +182,15 @@ public class AlignedMemPageReaderTest {
     Filter globalTimeFilter = TimeFilterApi.gtEq(50L);
     MemAlignedPageReader alignedPageReader1 = generateAlignedPageReader();
     alignedPageReader1.addRecordFilter(globalTimeFilter);
-    alignedPageReader1.addRecordFilter(ValueFilterApi.gtEq(0));
+    alignedPageReader1.addRecordFilter(
+        ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 0, TSDataType.INT32));
     TsBlock tsBlock1 = alignedPageReader1.getAllSatisfiedData();
     Assert.assertEquals(50, tsBlock1.getPositionCount());
 
     MemAlignedPageReader alignedPageReader2 = 
generateSingleColumnAlignedPageReader();
     alignedPageReader2.addRecordFilter(globalTimeFilter);
-    alignedPageReader2.addRecordFilter(ValueFilterApi.gtEq(0));
+    alignedPageReader2.addRecordFilter(
+        ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 0, TSDataType.INT32));
     TsBlock tsBlock2 = alignedPageReader2.getAllSatisfiedData();
     Assert.assertEquals(40, tsBlock2.getPositionCount());
   }
@@ -192,7 +200,8 @@ public class AlignedMemPageReaderTest {
     Filter globalTimeFilter = TimeFilterApi.gtEq(50L);
     MemAlignedPageReader alignedPageReader1 = generateAlignedPageReader();
     alignedPageReader1.addRecordFilter(globalTimeFilter);
-    alignedPageReader1.addRecordFilter(ValueFilterApi.gtEq(0));
+    alignedPageReader1.addRecordFilter(
+        ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 0, TSDataType.INT32));
     alignedPageReader1.setLimitOffset(new PaginationController(10, 10));
     TsBlock tsBlock1 = alignedPageReader1.getAllSatisfiedData();
     Assert.assertEquals(10, tsBlock1.getPositionCount());
@@ -201,7 +210,8 @@ public class AlignedMemPageReaderTest {
 
     MemAlignedPageReader alignedPageReader2 = 
generateSingleColumnAlignedPageReader();
     alignedPageReader2.addRecordFilter(globalTimeFilter);
-    alignedPageReader2.addRecordFilter(ValueFilterApi.gtEq(0));
+    alignedPageReader2.addRecordFilter(
+        ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 0, TSDataType.INT32));
     alignedPageReader2.setLimitOffset(new PaginationController(10, 10));
     TsBlock tsBlock2 = alignedPageReader2.getAllSatisfiedData();
     Assert.assertEquals(10, tsBlock2.getPositionCount());
@@ -214,13 +224,15 @@ public class AlignedMemPageReaderTest {
     Filter globalTimeFilter = TimeFilterApi.gtEq(30L);
     MemAlignedPageReader alignedPageReader1 = generateAlignedPageReader();
     alignedPageReader1.addRecordFilter(globalTimeFilter);
-    alignedPageReader1.addRecordFilter(ValueFilterApi.lt(80));
+    alignedPageReader1.addRecordFilter(
+        ValueFilterApi.lt(DEFAULT_MEASUREMENT_INDEX, 80, TSDataType.INT32));
     TsBlock tsBlock1 = alignedPageReader1.getAllSatisfiedData();
     Assert.assertEquals(50, tsBlock1.getPositionCount());
 
     MemAlignedPageReader alignedPageReader2 = 
generateSingleColumnAlignedPageReader();
     alignedPageReader2.addRecordFilter(globalTimeFilter);
-    alignedPageReader2.addRecordFilter(ValueFilterApi.lt(80));
+    alignedPageReader2.addRecordFilter(
+        ValueFilterApi.lt(DEFAULT_MEASUREMENT_INDEX, 80, TSDataType.INT32));
     TsBlock tsBlock2 = alignedPageReader2.getAllSatisfiedData();
     Assert.assertEquals(50, tsBlock2.getPositionCount());
   }
@@ -230,7 +242,8 @@ public class AlignedMemPageReaderTest {
     Filter globalTimeFilter = TimeFilterApi.gtEq(50L);
     MemAlignedPageReader alignedPageReader1 = generateAlignedPageReader();
     alignedPageReader1.addRecordFilter(globalTimeFilter);
-    alignedPageReader1.addRecordFilter(ValueFilterApi.lt(80));
+    alignedPageReader1.addRecordFilter(
+        ValueFilterApi.lt(DEFAULT_MEASUREMENT_INDEX, 80, TSDataType.INT32));
     alignedPageReader1.setLimitOffset(new PaginationController(10, 10));
     TsBlock tsBlock1 = alignedPageReader1.getAllSatisfiedData();
     Assert.assertEquals(10, tsBlock1.getPositionCount());
@@ -239,7 +252,8 @@ public class AlignedMemPageReaderTest {
 
     MemAlignedPageReader alignedPageReader2 = 
generateSingleColumnAlignedPageReader();
     alignedPageReader2.addRecordFilter(globalTimeFilter);
-    alignedPageReader2.addRecordFilter(ValueFilterApi.lt(80));
+    alignedPageReader2.addRecordFilter(
+        ValueFilterApi.lt(DEFAULT_MEASUREMENT_INDEX, 80, TSDataType.INT32));
     alignedPageReader2.setLimitOffset(new PaginationController(10, 10));
     TsBlock tsBlock2 = alignedPageReader2.getAllSatisfiedData();
     Assert.assertEquals(10, tsBlock2.getPositionCount());
diff --git 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemPageReaderTest.java
 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemPageReaderTest.java
index ec0a7cebaf7..f9a13a71ad8 100644
--- 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemPageReaderTest.java
+++ 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/chunk/MemPageReaderTest.java
@@ -36,6 +36,8 @@ import java.io.IOException;
 import java.util.Collections;
 import java.util.Optional;
 
+import static 
org.apache.tsfile.read.filter.factory.ValueFilterApi.DEFAULT_MEASUREMENT_INDEX;
+
 public class MemPageReaderTest {
 
   private static final TsBlock tsBlock;
@@ -110,7 +112,7 @@ public class MemPageReaderTest {
   public void testFilter() throws IOException {
     IPageReader pageReader = generatePageReader();
     pageReader.addRecordFilter(TimeFilterApi.gtEq(50));
-    pageReader.addRecordFilter(ValueFilterApi.lt(80));
+    pageReader.addRecordFilter(ValueFilterApi.lt(DEFAULT_MEASUREMENT_INDEX, 
80, TSDataType.INT32));
 
     TsBlock tsBlock = pageReader.getAllSatisfiedData();
 
@@ -121,7 +123,7 @@ public class MemPageReaderTest {
   public void testFilterAndLimitOffset() throws IOException {
     IPageReader pageReader = generatePageReader();
     pageReader.addRecordFilter(TimeFilterApi.gtEq(50));
-    pageReader.addRecordFilter(ValueFilterApi.lt(80));
+    pageReader.addRecordFilter(ValueFilterApi.lt(DEFAULT_MEASUREMENT_INDEX, 
80, TSDataType.INT32));
     pageReader.setLimitOffset(new PaginationController(10, 10));
 
     TsBlock tsBlock = pageReader.getAllSatisfiedData();
diff --git 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/series/AlignedSeriesScanPredicatePushDownTest.java
 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/series/AlignedSeriesScanPredicatePushDownTest.java
index a7bcce09634..9c63821bfd2 100644
--- 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/series/AlignedSeriesScanPredicatePushDownTest.java
+++ 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/series/AlignedSeriesScanPredicatePushDownTest.java
@@ -188,7 +188,9 @@ public class AlignedSeriesScanPredicatePushDownTest extends 
AbstractAlignedSerie
     AlignedSeriesScanUtil seriesScanUtil =
         getAlignedSeriesScanUtil(
             TimeFilterApi.gt(10),
-            FilterFactory.and(ValueFilterApi.gtEq(0, 20), ValueFilterApi.lt(1, 
30)));
+            FilterFactory.and(
+                ValueFilterApi.gtEq(0, 20, TSDataType.INT32),
+                ValueFilterApi.lt(1, 30, TSDataType.INT32)));
 
     // File 1 skipped
     // File 2 skipped
diff --git 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/series/SeriesScanPredicatePushDownTest.java
 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/series/SeriesScanPredicatePushDownTest.java
index e9d03b5aae1..de295f1ce9a 100644
--- 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/series/SeriesScanPredicatePushDownTest.java
+++ 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/read/reader/series/SeriesScanPredicatePushDownTest.java
@@ -38,6 +38,8 @@ import org.junit.Test;
 import java.io.IOException;
 import java.util.Collections;
 
+import static 
org.apache.tsfile.read.filter.factory.ValueFilterApi.DEFAULT_MEASUREMENT_INDEX;
+
 public class SeriesScanPredicatePushDownTest extends AbstractSeriesScanTest {
 
   private SeriesScanUtil getSeriesScanUtil(Filter globalTimeFilter, Filter 
pushDownFilter)
@@ -155,7 +157,10 @@ public class SeriesScanPredicatePushDownTest extends 
AbstractSeriesScanTest {
 
   @Test
   public void testSkipFileByPushDownFilter() throws IllegalPathException, 
IOException {
-    SeriesScanUtil seriesScanUtil = getSeriesScanUtil(TimeFilterApi.gt(0), 
ValueFilterApi.gtEq(10));
+    SeriesScanUtil seriesScanUtil =
+        getSeriesScanUtil(
+            TimeFilterApi.gt(0),
+            ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 10, 
TSDataType.INT32));
     checkFile1Skipped(seriesScanUtil);
   }
 
@@ -184,7 +189,10 @@ public class SeriesScanPredicatePushDownTest extends 
AbstractSeriesScanTest {
 
   @Test
   public void testSkipChunkByPushDownFilter() throws IllegalPathException, 
IOException {
-    SeriesScanUtil seriesScanUtil = getSeriesScanUtil(TimeFilterApi.gt(0), 
ValueFilterApi.gtEq(20));
+    SeriesScanUtil seriesScanUtil =
+        getSeriesScanUtil(
+            TimeFilterApi.gt(0),
+            ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 20, 
TSDataType.INT32));
     checkFile2Chunk1Skipped(seriesScanUtil);
   }
 
@@ -223,7 +231,10 @@ public class SeriesScanPredicatePushDownTest extends 
AbstractSeriesScanTest {
 
   @Test
   public void testSkipPageByPushDownFilter() throws IllegalPathException, 
IOException {
-    SeriesScanUtil seriesScanUtil = getSeriesScanUtil(TimeFilterApi.gt(0), 
ValueFilterApi.gtEq(40));
+    SeriesScanUtil seriesScanUtil =
+        getSeriesScanUtil(
+            TimeFilterApi.gt(0),
+            ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 40, 
TSDataType.INT32));
     checkFile1AndFile2Skipped(seriesScanUtil);
 
     // File 3 - Chunk 1 - Page 1 skipped
@@ -261,7 +272,10 @@ public class SeriesScanPredicatePushDownTest extends 
AbstractSeriesScanTest {
 
   @Test
   public void testSkipMergeReaderPointByPushDownFilter() throws 
IllegalPathException, IOException {
-    SeriesScanUtil seriesScanUtil = getSeriesScanUtil(TimeFilterApi.gt(0), 
ValueFilterApi.gtEq(55));
+    SeriesScanUtil seriesScanUtil =
+        getSeriesScanUtil(
+            TimeFilterApi.gt(0),
+            ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 55, 
TSDataType.INT32));
     checkFile1AndFile2AndMergeReaderPointSkipped(seriesScanUtil);
   }
 
@@ -307,7 +321,10 @@ public class SeriesScanPredicatePushDownTest extends 
AbstractSeriesScanTest {
 
   @Test
   public void testSkipMergeReaderByPushDownFilter() throws 
IllegalPathException, IOException {
-    SeriesScanUtil seriesScanUtil = getSeriesScanUtil(TimeFilterApi.gt(0), 
ValueFilterApi.gtEq(60));
+    SeriesScanUtil seriesScanUtil =
+        getSeriesScanUtil(
+            TimeFilterApi.gt(0),
+            ValueFilterApi.gtEq(DEFAULT_MEASUREMENT_INDEX, 60, 
TSDataType.INT32));
 
     checkFile1AndFile2AndFile3Chunk1Skipped(seriesScanUtil);
 
diff --git a/pom.xml b/pom.xml
index e29fe9e5365..d4bb7dce342 100644
--- a/pom.xml
+++ b/pom.xml
@@ -166,7 +166,7 @@
         <thrift.version>0.14.1</thrift.version>
         <xz.version>1.9</xz.version>
         <zstd-jni.version>1.5.6-3</zstd-jni.version>
-        <tsfile.version>1.0.1-a6fb416-SNAPSHOT</tsfile.version>
+        <tsfile.version>1.1.0-86d5641f-SNAPSHOT</tsfile.version>
     </properties>
     <!--
     if we claim dependencies in dependencyManagement, then we do not claim

Reply via email to