This is an automated email from the ASF dual-hosted git repository.
haonan pushed a commit to branch dev/1.3
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/dev/1.3 by this push:
new 7933ef98613 [To dev/1.3] Fix flaky LastFlushTimeMapTest & Fix go
client CI for dev/1.3 (#14403)
7933ef98613 is described below
commit 7933ef986137122c05044bd951680eee976a0f27
Author: Haonan <[email protected]>
AuthorDate: Thu Dec 12 19:02:56 2024 +0800
[To dev/1.3] Fix flaky LastFlushTimeMapTest & Fix go client CI for dev/1.3
(#14403)
---
.github/workflows/multi-language-client.yml | 3 ++-
.../dataregion/memtable/TsFileProcessor.java | 1 +
.../storageengine/dataregion/DataRegionTest.java | 30 ++--------------------
.../dataregion/LastFlushTimeMapTest.java | 13 +---------
4 files changed, 6 insertions(+), 41 deletions(-)
diff --git a/.github/workflows/multi-language-client.yml
b/.github/workflows/multi-language-client.yml
index 89c64ec7178..b1374ae2795 100644
--- a/.github/workflows/multi-language-client.yml
+++ b/.github/workflows/multi-language-client.yml
@@ -119,7 +119,8 @@ jobs:
run: |
cd iotdb-client
git clone https://github.com/apache/iotdb-client-go.git
- cd iotdb-client-go
+ cd iotdb-client-go
+ git checkout rc/1.3.3
make e2e_test_for_parent_git_repo e2e_test_clean_for_parent_git_repo
python:
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
index 477ae74da4b..e99a1d14fca 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/storageengine/dataregion/memtable/TsFileProcessor.java
@@ -1170,6 +1170,7 @@ public class TsFileProcessor {
* TODO if the flushing thread is too fast, the tmpMemTable.wait() may never
wakeup Tips: I am
* trying to solve this issue by checking whether the table exist before
wait()
*/
+ @TestOnly
public void syncFlush() throws IOException {
IMemTable tmpMemTable;
flushQueryLock.writeLock().lock();
diff --git
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/DataRegionTest.java
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/DataRegionTest.java
index 7361f940b48..e7fa54e0b65 100644
---
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/DataRegionTest.java
+++
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/DataRegionTest.java
@@ -178,10 +178,7 @@ public class DataRegionTest {
record.addTuple(DataPoint.getDataPoint(TSDataType.INT32, measurementId,
String.valueOf(j)));
dataRegion.insert(buildInsertRowNodeByTSRecord(record));
}
-
- for (TsFileProcessor tsfileProcessor :
dataRegion.getWorkUnsequenceTsFileProcessors()) {
- tsfileProcessor.syncFlush();
- }
+ dataRegion.syncCloseWorkingTsFileProcessors(false);
for (int j = 11; j <= 20; j++) {
record = new TSRecord(j, deviceId);
@@ -655,10 +652,6 @@ public class DataRegionTest {
dataRegion.syncCloseAllWorkingTsFileProcessors();
}
- for (TsFileProcessor tsfileProcessor :
dataRegion.getWorkUnsequenceTsFileProcessors()) {
- tsfileProcessor.syncFlush();
- }
-
QueryDataSource queryDataSource =
dataRegion.query(
Collections.singletonList(new PartialPath(deviceId,
measurementId)),
@@ -744,10 +737,6 @@ public class DataRegionTest {
dataRegion.insertTablet(insertTabletNode2);
dataRegion.syncCloseAllWorkingTsFileProcessors();
- for (TsFileProcessor tsfileProcessor :
dataRegion.getWorkUnsequenceTsFileProcessors()) {
- tsfileProcessor.syncFlush();
- }
-
QueryDataSource queryDataSource =
dataRegion.query(
Collections.singletonList(new PartialPath(deviceId,
measurementId)),
@@ -832,10 +821,6 @@ public class DataRegionTest {
dataRegion.insertTablet(insertTabletNode2);
dataRegion.syncCloseAllWorkingTsFileProcessors();
- for (TsFileProcessor tsfileProcessor :
dataRegion.getWorkUnsequenceTsFileProcessors()) {
- tsfileProcessor.syncFlush();
- }
-
QueryDataSource queryDataSource =
dataRegion.query(
Collections.singletonList(new PartialPath(deviceId,
measurementId)),
@@ -920,10 +905,6 @@ public class DataRegionTest {
dataRegion.insertTablet(insertTabletNode2);
dataRegion.syncCloseAllWorkingTsFileProcessors();
- for (TsFileProcessor tsfileProcessor :
dataRegion.getWorkUnsequenceTsFileProcessors()) {
- tsfileProcessor.syncFlush();
- }
-
QueryDataSource queryDataSource =
dataRegion.query(
Collections.singletonList(new PartialPath(deviceId,
measurementId)),
@@ -999,11 +980,6 @@ public class DataRegionTest {
dataRegion1.syncCloseAllWorkingTsFileProcessors();
}
dataRegion1.syncCloseAllWorkingTsFileProcessors();
-
- for (TsFileProcessor tsfileProcessor :
dataRegion1.getWorkUnsequenceTsFileProcessors()) {
- tsfileProcessor.syncFlush();
- }
-
QueryDataSource queryDataSource =
dataRegion1.query(
Collections.singletonList(new PartialPath("root.ln22",
measurementId)),
@@ -1551,9 +1527,7 @@ public class DataRegionTest {
dataRegion.insert(buildInsertRowNodeByTSRecord(record));
}
- for (TsFileProcessor processor :
dataRegion.getWorkSequenceTsFileProcessors()) {
- processor.syncFlush();
- }
+ dataRegion.syncCloseWorkingTsFileProcessors(true);
TsFileResource tsFileResourceUnSeq =
dataRegion.getTsFileManager().getTsFileList(false).get(0);
Assert.assertTrue(tsFileResourceSeq.getTsFile().exists());
diff --git
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/LastFlushTimeMapTest.java
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/LastFlushTimeMapTest.java
index 20b3dfe378a..b260445a5bd 100644
---
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/LastFlushTimeMapTest.java
+++
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/LastFlushTimeMapTest.java
@@ -25,7 +25,6 @@ import org.apache.iotdb.db.exception.DataRegionException;
import org.apache.iotdb.db.exception.WriteProcessException;
import org.apache.iotdb.db.storageengine.StorageEngine;
import
org.apache.iotdb.db.storageengine.dataregion.compaction.schedule.CompactionTaskManager;
-import org.apache.iotdb.db.storageengine.dataregion.memtable.TsFileProcessor;
import org.apache.iotdb.db.storageengine.dataregion.tsfile.TsFileResource;
import
org.apache.iotdb.db.storageengine.dataregion.tsfile.timeindex.DeviceTimeIndex;
import org.apache.iotdb.db.utils.EnvironmentUtils;
@@ -90,9 +89,7 @@ public class LastFlushTimeMapTest {
dataRegion.insert(DataRegionTest.buildInsertRowNodeByTSRecord(record));
}
- for (TsFileProcessor tsfileProcessor :
dataRegion.getWorkUnsequenceTsFileProcessors()) {
- tsfileProcessor.syncFlush();
- }
+ dataRegion.syncCloseWorkingTsFileProcessors(false);
Assert.assertEquals(
10000,
dataRegion.getLastFlushTimeMap().getFlushedTime(0, new
PlainDeviceID("root.vehicle.d0")));
@@ -116,10 +113,6 @@ public class LastFlushTimeMapTest {
record.addTuple(DataPoint.getDataPoint(TSDataType.INT32, measurementId,
String.valueOf(j)));
dataRegion.insert(DataRegionTest.buildInsertRowNodeByTSRecord(record));
}
-
- for (TsFileProcessor tsfileProcessor :
dataRegion.getWorkUnsequenceTsFileProcessors()) {
- tsfileProcessor.syncFlush();
- }
dataRegion.syncCloseAllWorkingTsFileProcessors();
Assert.assertEquals(
10000,
@@ -155,10 +148,6 @@ public class LastFlushTimeMapTest {
record.addTuple(DataPoint.getDataPoint(TSDataType.INT32, measurementId,
String.valueOf(j)));
dataRegion.insert(DataRegionTest.buildInsertRowNodeByTSRecord(record));
}
-
- for (TsFileProcessor tsfileProcessor :
dataRegion.getWorkUnsequenceTsFileProcessors()) {
- tsfileProcessor.syncFlush();
- }
dataRegion.syncCloseAllWorkingTsFileProcessors();
Assert.assertEquals(
604_800_000,