You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by sh...@apache.org on 2026/01/23 10:28:02 UTC
(iotdb) 02/02: add it
This is an automated email from the ASF dual-hosted git repository.
shuwenwei pushed a commit to branch fixLastQueryBug-0123
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 6737702c648f7dcd2650721607311fcc22db7597
Author: shuwenwei <s1...@gmail.com>
AuthorDate: Fri Jan 23 18:27:39 2026 +0800
add it
---
.../db/it/last/IoTDBLastQueryLastCacheIT.java | 42 ++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/integration-test/src/test/java/org/apache/iotdb/db/it/last/IoTDBLastQueryLastCacheIT.java b/integration-test/src/test/java/org/apache/iotdb/db/it/last/IoTDBLastQueryLastCacheIT.java
index 1c69857a3c5..3eedf1540eb 100644
--- a/integration-test/src/test/java/org/apache/iotdb/db/it/last/IoTDBLastQueryLastCacheIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/last/IoTDBLastQueryLastCacheIT.java
@@ -192,4 +192,46 @@ public class IoTDBLastQueryLastCacheIT {
};
resultSetEqualTest("select last s1 from root.sg.d1;", expectedHeader, retArray);
}
+
+ @Test
+ public void testNonAlignedLastQueryWithTimeFilterWithoutCache() throws SQLException {
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("insert into root.db1.g1.d3(time,s_3) values (1,1)");
+ statement.execute("insert into root.db1.g1.d3(time,s_3) values (2,2)");
+ statement.execute("insert into root.db1.g1.d3(time,s_3) values (3,3)");
+ statement.execute("insert into root.db1.g1.d3(time,s_3) values (4,4)");
+ statement.execute("insert into root.db1.g1.d3(time,s_1) values (1,1)");
+ statement.execute("insert into root.db1.g1.d3(time,s_1) values (2,2)");
+ }
+ String[] expectedHeader =
+ new String[] {TIMESTAMP_STR, TIMESERIES_STR, VALUE_STR, DATA_TYPE_STR};
+ String[] retArray =
+ new String[] {
+ "4,root.db1.g1.d3.s_3,4.0,DOUBLE,",
+ };
+ resultSetEqualTest(
+ "select last s_1, s_3 from root.db1.g1.d3 where time > 2;", expectedHeader, retArray);
+ }
+
+ @Test
+ public void testAlignedLastQueryWithTimeFilterWithoutCache() throws SQLException {
+ try (Connection connection = EnvFactory.getEnv().getConnection();
+ Statement statement = connection.createStatement()) {
+ statement.execute("insert into root.db1.g1.d4(time,s_3) aligned values (1,1)");
+ statement.execute("insert into root.db1.g1.d4(time,s_3) aligned values (2,2)");
+ statement.execute("insert into root.db1.g1.d4(time,s_3) aligned values (3,3)");
+ statement.execute("insert into root.db1.g1.d4(time,s_3) aligned values (4,4)");
+ statement.execute("insert into root.db1.g1.d4(time,s_1) aligned values (1,1)");
+ statement.execute("insert into root.db1.g1.d4(time,s_1) aligned values (2,2)");
+ }
+ String[] expectedHeader =
+ new String[] {TIMESTAMP_STR, TIMESERIES_STR, VALUE_STR, DATA_TYPE_STR};
+ String[] retArray =
+ new String[] {
+ "4,root.db1.g1.d4.s_3,4.0,DOUBLE,",
+ };
+ resultSetEqualTest(
+ "select last s_1, s_3 from root.db1.g1.d4 where time > 2;", expectedHeader, retArray);
+ }
}