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:17 UTC
[iotdb] 04/04: add ITs
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 ad4eafde4700a12663eaee3ee07340af151ad964
Author: liuminghui233 <54...@qq.com>
AuthorDate: Fri Apr 14 00:08:01 2023 +0800
add ITs
---
.../iotdb/db/it/query/IoTDBPaginationIT.java | 59 +++++++++++++++++++++-
1 file changed, 58 insertions(+), 1 deletion(-)
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBPaginationIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBPaginationIT.java
index 0e1fb007f5..f9d9a70a8a 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBPaginationIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBPaginationIT.java
@@ -76,11 +76,36 @@ public class IoTDBPaginationIT {
"insert into root.vehicle.d0(timestamp,s2) values(102,10.00)",
"insert into root.vehicle.d0(timestamp,s2) values(105,11.11)",
"insert into root.vehicle.d0(timestamp,s2) values(1000,1000.11)",
- "insert into root.vehicle.d0(timestamp,s1) values(2000-01-01T08:00:00+08:00, 100)"
+ "insert into root.vehicle.d0(timestamp,s1) values(2000-01-01T08:00:00+08:00, 100)",
+ "CREATE DATABASE root.db",
+ "CREATE TIMESERIES root.db.d1.s1 INT32",
+ "insert into root.db.d1(timestamp,s1) values(0, 0)",
+ "insert into root.db.d1(timestamp,s1) values(1, 1)",
+ "insert into root.db.d1(timestamp,s1) values(2, 2)",
+ "insert into root.db.d1(timestamp,s1) values(3, 3)",
+ "insert into root.db.d1(timestamp,s1) values(4, 4)",
+ "flush",
+ "insert into root.db.d1(timestamp,s1) values(5, 5)",
+ "insert into root.db.d1(timestamp,s1) values(6, 6)",
+ "insert into root.db.d1(timestamp,s1) values(7, 7)",
+ "insert into root.db.d1(timestamp,s1) values(8, 8)",
+ "insert into root.db.d1(timestamp,s1) values(9, 9)",
+ "flush",
+ "insert into root.db.d1(timestamp,s1) values(10, 10)",
+ "insert into root.db.d1(timestamp,s1) values(11, 11)",
+ "insert into root.db.d1(timestamp,s1) values(12, 12)",
+ "insert into root.db.d1(timestamp,s1) values(13, 13)",
+ "insert into root.db.d1(timestamp,s1) values(14, 14)"
};
@BeforeClass
public static void setUp() throws InterruptedException {
+ EnvFactory.getEnv()
+ .getConfig()
+ .getCommonConfig()
+ .setEnableSeqSpaceCompaction(false)
+ .setEnableUnseqSpaceCompaction(false)
+ .setEnableCrossSpaceCompaction(false);
EnvFactory.getEnv().initClusterEnvironment();
prepareData(SQLs);
}
@@ -135,4 +160,36 @@ public class IoTDBPaginationIT {
resultSetEqualTest(querySQLs.get(0), expectHeaders.get(0), retArrays.get(0));
}
}
+
+ @Test
+ public void limitOffsetPushDownTest() {
+ String expectedHeader = "Time,root.db.d1.s1,";
+ String[] retArray =
+ new String[] {
+ "3,3,",
+ };
+ resultSetEqualTest(
+ "select s1 from root.db.d1 where time > 1 offset 1 limit 1", expectedHeader, retArray);
+
+ retArray =
+ new String[] {
+ "5,5,",
+ };
+ resultSetEqualTest(
+ "select s1 from root.db.d1 where time > 1 offset 3 limit 1", expectedHeader, retArray);
+
+ retArray =
+ new String[] {
+ "7,7,",
+ };
+ resultSetEqualTest(
+ "select s1 from root.db.d1 where time > 1 offset 5 limit 1", expectedHeader, retArray);
+
+ retArray =
+ new String[] {
+ "12,12,",
+ };
+ resultSetEqualTest(
+ "select s1 from root.db.d1 where time > 1 offset 10 limit 1", expectedHeader, retArray);
+ }
}