You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ha...@apache.org on 2022/10/14 02:54:04 UTC

[iotdb] 01/01: Add check to avoid flush empty chunk group

This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch Avoid_flush_empty_chunkGroup
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit d7a129b24d2aa52963a37d1363f74d1a696ca839
Author: HTHou <hh...@outlook.com>
AuthorDate: Fri Oct 14 10:53:46 2022 +0800

    Add check to avoid flush empty chunk group
---
 .../main/java/org/apache/iotdb/db/engine/flush/MemTableFlushTask.java | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/server/src/main/java/org/apache/iotdb/db/engine/flush/MemTableFlushTask.java b/server/src/main/java/org/apache/iotdb/db/engine/flush/MemTableFlushTask.java
index 5ab620f7fd..5544e596de 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/flush/MemTableFlushTask.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/flush/MemTableFlushTask.java
@@ -125,6 +125,10 @@ public class MemTableFlushTask {
       encodingTaskQueue.put(new StartFlushGroupIOTask(deviceID.toStringID()));
 
       final Map<String, IWritableMemChunk> value = memTableMap.get(deviceID).getMemChunkMap();
+      // skip the empty device/chunk group
+      if (value.isEmpty()) {
+        continue;
+      }
       for (Map.Entry<String, IWritableMemChunk> iWritableMemChunkEntry : value.entrySet()) {
         long startTime = System.currentTimeMillis();
         IWritableMemChunk series = iWritableMemChunkEntry.getValue();