Skip to content

Commit 9ffa893

Browse files
authored
[Test] Speed up schema, pipe and subscription integration tests (#18943)
1 parent c535723 commit 9ffa893

7 files changed

Lines changed: 109 additions & 90 deletions

File tree

‎integration-test/src/test/java/org/apache/iotdb/db/it/schema/IoTDBAlterTimeSeriesTypeIT.java‎

Lines changed: 47 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -375,12 +375,14 @@ private void doWriteAndAlterWriteForAccumulatorQuery(TSDataType from, TSDataType
375375
Collections.singletonList("s1"),
376376
Collections.singletonList(from),
377377
Collections.singletonList(ColumnCategory.FIELD));
378+
// Batch fixture writes without crossing data type changes or flush boundaries.
378379
for (int i = 1; i <= 512; i++) {
379-
tablet.addTimestamp(0, i);
380-
tablet.addValue("s1", 0, genValue(from, i));
381-
session.insertTablet(tablet);
382-
tablet.reset();
380+
int rowIndex = tablet.getRowSize();
381+
tablet.addTimestamp(rowIndex, i);
382+
tablet.addValue("s1", rowIndex, genValue(from, i));
383383
}
384+
session.insertTablet(tablet);
385+
tablet.reset();
384386
session.executeNonQueryStatement("FLUSH");
385387

386388
// alter the type to "to"
@@ -413,11 +415,12 @@ private void doWriteAndAlterWriteForAccumulatorQuery(TSDataType from, TSDataType
413415
Collections.singletonList(to),
414416
Collections.singletonList(ColumnCategory.FIELD));
415417
for (int i = 513; i <= 1024; i++) {
416-
tablet.addTimestamp(0, i);
417-
tablet.addValue("s1", 0, genValue(to, i));
418-
session.insertTablet(tablet);
419-
tablet.reset();
418+
int rowIndex = tablet.getRowSize();
419+
tablet.addTimestamp(rowIndex, i);
420+
tablet.addValue("s1", rowIndex, genValue(to, i));
420421
}
422+
session.insertTablet(tablet);
423+
tablet.reset();
421424
session.executeNonQueryStatement("FLUSH");
422425

423426
standardAccumulatorQueryByTimeOnlyInvolveOldDataTypeTest(session, from, to);
@@ -1186,23 +1189,23 @@ public void testNonAlignDeviceSequenceDataQuery(TSDataType from, TSDataType to)
11861189
// session.executeNonQueryStatement("FLUSH");
11871190
for (int i = 1; i <= 512; i++) {
11881191
int rowIndex = tablet.getRowSize();
1189-
tablet.addTimestamp(0, i);
1192+
tablet.addTimestamp(rowIndex, i);
11901193
tablet.addValue("s1", rowIndex, genValue(from, i));
11911194
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1192-
session.insertTablet(tablet);
1193-
tablet.reset();
11941195
}
1196+
session.insertTablet(tablet);
1197+
tablet.reset();
11951198

11961199
session.executeNonQueryStatement("FLUSH");
11971200

11981201
for (int i = 513; i <= 1024; i++) {
11991202
int rowIndex = tablet.getRowSize();
1200-
tablet.addTimestamp(0, i);
1203+
tablet.addTimestamp(rowIndex, i);
12011204
tablet.addValue("s1", rowIndex, genValue(from, i));
12021205
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1203-
session.insertTablet(tablet);
1204-
tablet.reset();
12051206
}
1207+
session.insertTablet(tablet);
1208+
tablet.reset();
12061209

12071210
String columns;
12081211
if (UNSUPPORT_MIN_AND_MAX_QUERY_DATA_TYPE_LIST.contains(from)
@@ -1323,23 +1326,23 @@ public void testAlignDeviceSequenceDataQuery(TSDataType from, TSDataType to) thr
13231326
// session.executeNonQueryStatement("FLUSH");
13241327
for (int i = 1; i <= 512; i++) {
13251328
int rowIndex = tablet.getRowSize();
1326-
tablet.addTimestamp(0, i);
1329+
tablet.addTimestamp(rowIndex, i);
13271330
tablet.addValue("s1", rowIndex, genValue(from, i));
13281331
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1329-
session.insertTablet(tablet);
1330-
tablet.reset();
13311332
}
1333+
session.insertTablet(tablet);
1334+
tablet.reset();
13321335

13331336
session.executeNonQueryStatement("FLUSH");
13341337

13351338
for (int i = 513; i <= 1024; i++) {
13361339
int rowIndex = tablet.getRowSize();
1337-
tablet.addTimestamp(0, i);
1340+
tablet.addTimestamp(rowIndex, i);
13381341
tablet.addValue("s1", rowIndex, genValue(from, i));
13391342
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1340-
session.insertTablet(tablet);
1341-
tablet.reset();
13421343
}
1344+
session.insertTablet(tablet);
1345+
tablet.reset();
13431346

13441347
String columns;
13451348
if (UNSUPPORT_MIN_AND_MAX_QUERY_DATA_TYPE_LIST.contains(from)
@@ -1452,23 +1455,23 @@ public void testNonAlignDeviceUnSequenceDataQuery(TSDataType from, TSDataType to
14521455

14531456
for (int i = 513; i <= 1024; i++) {
14541457
int rowIndex = tablet.getRowSize();
1455-
tablet.addTimestamp(0, i);
1458+
tablet.addTimestamp(rowIndex, i);
14561459
tablet.addValue("s1", rowIndex, genValue(from, i));
14571460
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1458-
session.insertTablet(tablet);
1459-
tablet.reset();
14601461
}
1462+
session.insertTablet(tablet);
1463+
tablet.reset();
14611464

14621465
session.executeNonQueryStatement("FLUSH");
14631466

14641467
for (int i = 1; i <= 512; i++) {
14651468
int rowIndex = tablet.getRowSize();
1466-
tablet.addTimestamp(0, i);
1469+
tablet.addTimestamp(rowIndex, i);
14671470
tablet.addValue("s1", rowIndex, genValue(from, i));
14681471
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1469-
session.insertTablet(tablet);
1470-
tablet.reset();
14711472
}
1473+
session.insertTablet(tablet);
1474+
tablet.reset();
14721475
// session.executeNonQueryStatement("FLUSH");
14731476

14741477
String columns;
@@ -1585,23 +1588,23 @@ public void testAlignDeviceUnSequenceDataQuery(TSDataType from, TSDataType to) t
15851588

15861589
for (int i = 513; i <= 1024; i++) {
15871590
int rowIndex = tablet.getRowSize();
1588-
tablet.addTimestamp(0, i);
1591+
tablet.addTimestamp(rowIndex, i);
15891592
tablet.addValue("s1", rowIndex, genValue(from, i));
15901593
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1591-
session.insertTablet(tablet);
1592-
tablet.reset();
15931594
}
1595+
session.insertTablet(tablet);
1596+
tablet.reset();
15941597

15951598
session.executeNonQueryStatement("FLUSH");
15961599

15971600
for (int i = 1; i <= 512; i++) {
15981601
int rowIndex = tablet.getRowSize();
1599-
tablet.addTimestamp(0, i);
1602+
tablet.addTimestamp(rowIndex, i);
16001603
tablet.addValue("s1", rowIndex, genValue(from, i));
16011604
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1602-
session.insertTablet(tablet);
1603-
tablet.reset();
16041605
}
1606+
session.insertTablet(tablet);
1607+
tablet.reset();
16051608
// session.executeNonQueryStatement("FLUSH");
16061609

16071610
String columns;
@@ -1715,23 +1718,23 @@ public void testNonAlignDeviceUnSequenceOverlappedDataQuery(TSDataType from, TSD
17151718

17161719
for (int i = 513; i <= 1024; i++) {
17171720
int rowIndex = tablet.getRowSize();
1718-
tablet.addTimestamp(0, i);
1721+
tablet.addTimestamp(rowIndex, i);
17191722
tablet.addValue("s1", rowIndex, genValue(from, i));
17201723
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1721-
session.insertTablet(tablet);
1722-
tablet.reset();
17231724
}
1725+
session.insertTablet(tablet);
1726+
tablet.reset();
17241727

17251728
session.executeNonQueryStatement("FLUSH");
17261729

17271730
for (int i = 1; i <= 520; i++) {
17281731
int rowIndex = tablet.getRowSize();
1729-
tablet.addTimestamp(0, i);
1732+
tablet.addTimestamp(rowIndex, i);
17301733
tablet.addValue("s1", rowIndex, genValue(from, i));
17311734
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1732-
session.insertTablet(tablet);
1733-
tablet.reset();
17341735
}
1736+
session.insertTablet(tablet);
1737+
tablet.reset();
17351738
// session.executeNonQueryStatement("FLUSH");
17361739

17371740
String columns;
@@ -1849,23 +1852,23 @@ public void testAlignDeviceUnSequenceOverlappedDataQuery(TSDataType from, TSData
18491852

18501853
for (int i = 513; i <= 1024; i++) {
18511854
int rowIndex = tablet.getRowSize();
1852-
tablet.addTimestamp(0, i);
1855+
tablet.addTimestamp(rowIndex, i);
18531856
tablet.addValue("s1", rowIndex, genValue(from, i));
18541857
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1855-
session.insertTablet(tablet);
1856-
tablet.reset();
18571858
}
1859+
session.insertTablet(tablet);
1860+
tablet.reset();
18581861

18591862
session.executeNonQueryStatement("FLUSH");
18601863

18611864
for (int i = 1; i <= 520; i++) {
18621865
int rowIndex = tablet.getRowSize();
1863-
tablet.addTimestamp(0, i);
1866+
tablet.addTimestamp(rowIndex, i);
18641867
tablet.addValue("s1", rowIndex, genValue(from, i));
18651868
tablet.addValue("s2", rowIndex, genValue(from, i * 2));
1866-
session.insertTablet(tablet);
1867-
tablet.reset();
18681869
}
1870+
session.insertTablet(tablet);
1871+
tablet.reset();
18691872
// session.executeNonQueryStatement("FLUSH");
18701873

18711874
String columns;

‎integration-test/src/test/java/org/apache/iotdb/db/it/utils/TestUtils.java‎

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1697,7 +1697,7 @@ public static void assertDataEventuallyOnEnv(
16971697
// Keep retrying if there are execution failures
16981698
await()
16991699
.pollInSameThread()
1700-
.pollDelay(1L, TimeUnit.SECONDS)
1700+
.pollDelay(0L, TimeUnit.SECONDS)
17011701
.pollInterval(1L, TimeUnit.SECONDS)
17021702
.atMost(timeoutSeconds, TimeUnit.SECONDS)
17031703
.untilAsserted(
@@ -1741,7 +1741,7 @@ public static void assertDataEventuallyOnEnv(
17411741
// Keep retrying if there are execution failures
17421742
await()
17431743
.pollInSameThread()
1744-
.pollDelay(1L, TimeUnit.SECONDS)
1744+
.pollDelay(0L, TimeUnit.SECONDS)
17451745
.pollInterval(1L, TimeUnit.SECONDS)
17461746
.atMost(timeoutSeconds, TimeUnit.SECONDS)
17471747
.untilAsserted(
@@ -1777,7 +1777,7 @@ public static void assertDataSizeEventuallyOnEnv(
17771777
// Keep retrying if there are execution failures
17781778
await()
17791779
.pollInSameThread()
1780-
.pollDelay(1L, TimeUnit.SECONDS)
1780+
.pollDelay(0L, TimeUnit.SECONDS)
17811781
.pollInterval(1L, TimeUnit.SECONDS)
17821782
.atMost(timeoutSeconds, TimeUnit.SECONDS)
17831783
.untilAsserted(
@@ -1821,7 +1821,7 @@ public static void assertDataEventuallyOnEnv(
18211821
// Keep retrying if there are execution failures
18221822
await()
18231823
.pollInSameThread()
1824-
.pollDelay(1L, TimeUnit.SECONDS)
1824+
.pollDelay(0L, TimeUnit.SECONDS)
18251825
.pollInterval(1L, TimeUnit.SECONDS)
18261826
.atMost(timeoutSeconds, TimeUnit.SECONDS)
18271827
.untilAsserted(
@@ -1902,7 +1902,7 @@ public static void assertDataEventuallyOnEnv(
19021902
// Keep retrying if there are execution failures
19031903
await()
19041904
.pollInSameThread()
1905-
.pollDelay(1L, TimeUnit.SECONDS)
1905+
.pollDelay(0L, TimeUnit.SECONDS)
19061906
.pollInterval(1L, TimeUnit.SECONDS)
19071907
.atMost(timeoutSeconds, TimeUnit.SECONDS)
19081908
.untilAsserted(
@@ -1983,7 +1983,7 @@ public static void assertDataEventuallyOnEnv(
19831983
// Keep retrying if there are execution failures
19841984
await()
19851985
.pollInSameThread()
1986-
.pollDelay(1L, TimeUnit.SECONDS)
1986+
.pollDelay(0L, TimeUnit.SECONDS)
19871987
.pollInterval(1L, TimeUnit.SECONDS)
19881988
.atMost(timeoutSeconds, TimeUnit.SECONDS)
19891989
.untilAsserted(
@@ -2027,7 +2027,7 @@ public static void assertDataEventuallyOnEnv(
20272027
// Keep retrying if there are execution failures
20282028
await()
20292029
.pollInSameThread()
2030-
.pollDelay(1L, TimeUnit.SECONDS)
2030+
.pollDelay(0L, TimeUnit.SECONDS)
20312031
.pollInterval(1L, TimeUnit.SECONDS)
20322032
.atMost(timeoutSeconds, TimeUnit.SECONDS)
20332033
.untilAsserted(

‎integration-test/src/test/java/org/apache/iotdb/pipe/it/dual/tablemodel/manual/enhanced/IoTDBPipeClusterIT.java‎

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -165,9 +165,8 @@ private void testMachineDowntime(String sink) {
165165

166166
TableModelUtils.assertCountData("test", "test", 1, receiverEnv);
167167
receiverEnv.getDataNodeWrapper(0).stop();
168-
169-
// Ensure that the kill -9 operation is completed
170-
Thread.sleep(5000);
168+
// stop() waits for process exit; verify it succeeded before checking failover.
169+
Assert.assertFalse(receiverEnv.getDataNodeWrapper(0).isAlive());
171170
TableModelUtils.insertData("test", "test", 1, 2, senderEnv);
172171
} catch (Exception e) {
173172
fail(e.getMessage());

‎integration-test/src/test/java/org/apache/iotdb/pipe/it/dual/treemodel/auto/enhanced/IoTDBPipeClusterIT.java‎

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -175,9 +175,8 @@ private void testMachineDowntime(String sink) {
175175
Assert.assertEquals(TSStatusCode.SUCCESS_STATUS.getStatusCode(), status.getCode());
176176

177177
receiverEnv.getDataNodeWrapper(0).stop();
178-
179-
// Ensure that the kill -9 operation is completed
180-
Thread.sleep(5000);
178+
// stop() waits for process exit; verify it succeeded before checking failover.
179+
Assert.assertFalse(receiverEnv.getDataNodeWrapper(0).isAlive());
181180
for (DataNodeWrapper nodeWrapper : receiverEnv.getDataNodeWrapperList()) {
182181
if (!nodeWrapper.isAlive()) {
183182
continue;

0 commit comments

Comments
 (0)