Skip to content

Commit 5b7f1c6

Browse files
authored
Fix flaky LastFlushTimeMapTest (apache#14225)
1 parent 8618464 commit 5b7f1c6

File tree

3 files changed

+4
-39
lines changed

3 files changed

+4
-39
lines changed

iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1311,6 +1311,7 @@ public Future<?> asyncClose() {
13111311
* TODO if the flushing thread is too fast, the tmpMemTable.wait() may never wakeup Tips: I am
13121312
* trying to solve this issue by checking whether the table exist before wait()
13131313
*/
1314+
@TestOnly
13141315
public void syncFlush() throws IOException {
13151316
IMemTable tmpMemTable;
13161317
flushQueryLock.writeLock().lock();

iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/DataRegionTest.java

Lines changed: 2 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -197,10 +197,7 @@ record = new TSRecord(j, deviceId);
197197
record.addTuple(DataPoint.getDataPoint(TSDataType.INT32, measurementId, String.valueOf(j)));
198198
dataRegion.insert(buildInsertRowNodeByTSRecord(record));
199199
}
200-
201-
for (TsFileProcessor tsfileProcessor : dataRegion.getWorkUnsequenceTsFileProcessors()) {
202-
tsfileProcessor.syncFlush();
203-
}
200+
dataRegion.syncCloseWorkingTsFileProcessors(false);
204201

205202
for (int j = 11; j <= 20; j++) {
206203
record = new TSRecord(j, deviceId);
@@ -753,10 +750,6 @@ public void testDisableSeparateDataForInsertRowPlan()
753750
dataRegion.syncCloseAllWorkingTsFileProcessors();
754751
}
755752

756-
for (TsFileProcessor tsfileProcessor : dataRegion.getWorkUnsequenceTsFileProcessors()) {
757-
tsfileProcessor.syncFlush();
758-
}
759-
760753
QueryDataSource queryDataSource =
761754
dataRegion.query(
762755
Collections.singletonList(nonAlignedFullPath), device, context, null, null);
@@ -838,10 +831,6 @@ public void testDisableSeparateDataForInsertTablet1()
838831
dataRegion.insertTablet(insertTabletNode2);
839832
dataRegion.syncCloseAllWorkingTsFileProcessors();
840833

841-
for (TsFileProcessor tsfileProcessor : dataRegion.getWorkUnsequenceTsFileProcessors()) {
842-
tsfileProcessor.syncFlush();
843-
}
844-
845834
QueryDataSource queryDataSource =
846835
dataRegion.query(
847836
Collections.singletonList(nonAlignedFullPath), device, context, null, null);
@@ -922,10 +911,6 @@ public void testDisableSeparateDataForInsertTablet2()
922911
dataRegion.insertTablet(insertTabletNode2);
923912
dataRegion.syncCloseAllWorkingTsFileProcessors();
924913

925-
for (TsFileProcessor tsfileProcessor : dataRegion.getWorkUnsequenceTsFileProcessors()) {
926-
tsfileProcessor.syncFlush();
927-
}
928-
929914
QueryDataSource queryDataSource =
930915
dataRegion.query(
931916
Collections.singletonList(nonAlignedFullPath), device, context, null, null);
@@ -1006,10 +991,6 @@ public void testDisableSeparateDataForInsertTablet3()
1006991
dataRegion.insertTablet(insertTabletNode2);
1007992
dataRegion.syncCloseAllWorkingTsFileProcessors();
1008993

1009-
for (TsFileProcessor tsfileProcessor : dataRegion.getWorkUnsequenceTsFileProcessors()) {
1010-
tsfileProcessor.syncFlush();
1011-
}
1012-
1013994
QueryDataSource queryDataSource =
1014995
dataRegion.query(
1015996
Collections.singletonList(nonAlignedFullPath), device, context, null, null);
@@ -1084,10 +1065,6 @@ public void testSmallReportProportionInsertRow()
10841065
dataRegion1.syncCloseAllWorkingTsFileProcessors();
10851066
}
10861067
dataRegion1.syncCloseAllWorkingTsFileProcessors();
1087-
1088-
for (TsFileProcessor tsfileProcessor : dataRegion1.getWorkUnsequenceTsFileProcessors()) {
1089-
tsfileProcessor.syncFlush();
1090-
}
10911068
IDeviceID tmpDeviceId = IDeviceID.Factory.DEFAULT_FACTORY.create("root.ln22");
10921069
QueryDataSource queryDataSource =
10931070
dataRegion1.query(
@@ -1733,9 +1710,7 @@ public void testDeleteDataDirectlyUnseqWriteModsOrDeleteFiles()
17331710
dataRegion.insert(buildInsertRowNodeByTSRecord(record));
17341711
}
17351712

1736-
for (TsFileProcessor processor : dataRegion.getWorkSequenceTsFileProcessors()) {
1737-
processor.syncFlush();
1738-
}
1713+
dataRegion.syncCloseWorkingTsFileProcessors(true);
17391714
TsFileResource tsFileResourceUnSeq = dataRegion.getTsFileManager().getTsFileList(false).get(0);
17401715

17411716
Assert.assertTrue(tsFileResourceSeq.getTsFile().exists());

iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/LastFlushTimeMapTest.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
import org.apache.iotdb.db.exception.WriteProcessException;
2626
import org.apache.iotdb.db.storageengine.StorageEngine;
2727
import org.apache.iotdb.db.storageengine.dataregion.compaction.schedule.CompactionTaskManager;
28-
import org.apache.iotdb.db.storageengine.dataregion.memtable.TsFileProcessor;
2928
import org.apache.iotdb.db.storageengine.dataregion.tsfile.TsFileResource;
3029
import org.apache.iotdb.db.storageengine.dataregion.tsfile.timeindex.ArrayDeviceTimeIndex;
3130
import org.apache.iotdb.db.utils.EnvironmentUtils;
@@ -89,9 +88,7 @@ record = new TSRecord(j, "root.vehicle.d0");
8988
dataRegion.insert(DataRegionTest.buildInsertRowNodeByTSRecord(record));
9089
}
9190

92-
for (TsFileProcessor tsfileProcessor : dataRegion.getWorkUnsequenceTsFileProcessors()) {
93-
tsfileProcessor.syncFlush();
94-
}
91+
dataRegion.syncCloseWorkingTsFileProcessors(false);
9592
Assert.assertEquals(
9693
10000,
9794
dataRegion
@@ -117,10 +114,6 @@ record = new TSRecord(j, "root.vehicle.d0");
117114
record.addTuple(DataPoint.getDataPoint(TSDataType.INT32, measurementId, String.valueOf(j)));
118115
dataRegion.insert(DataRegionTest.buildInsertRowNodeByTSRecord(record));
119116
}
120-
121-
for (TsFileProcessor tsfileProcessor : dataRegion.getWorkUnsequenceTsFileProcessors()) {
122-
tsfileProcessor.syncFlush();
123-
}
124117
dataRegion.syncCloseAllWorkingTsFileProcessors();
125118
Assert.assertEquals(
126119
10000,
@@ -164,10 +157,6 @@ record = new TSRecord(j, "root.vehicle.d0");
164157
record.addTuple(DataPoint.getDataPoint(TSDataType.INT32, measurementId, String.valueOf(j)));
165158
dataRegion.insert(DataRegionTest.buildInsertRowNodeByTSRecord(record));
166159
}
167-
168-
for (TsFileProcessor tsfileProcessor : dataRegion.getWorkUnsequenceTsFileProcessors()) {
169-
tsfileProcessor.syncFlush();
170-
}
171160
dataRegion.syncCloseAllWorkingTsFileProcessors();
172161
Assert.assertEquals(
173162
604_800_000,

0 commit comments

Comments
 (0)