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

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


The following commit(s) were added to refs/heads/autoai by this push:
     new 1313f52  only submit task when LEVEL_COMPACTION
1313f52 is described below

commit 1313f528ac4111513b1ddbfda132292d700d4e67
Author: qiaojialin <[email protected]>
AuthorDate: Wed Aug 4 18:14:13 2021 +0800

    only submit task when LEVEL_COMPACTION
---
 .../compaction/CompactionMergeTaskPoolManager.java | 24 ++++++++++++----------
 .../engine/storagegroup/StorageGroupProcessor.java | 11 ++++------
 2 files changed, 17 insertions(+), 18 deletions(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/engine/compaction/CompactionMergeTaskPoolManager.java
 
b/server/src/main/java/org/apache/iotdb/db/engine/compaction/CompactionMergeTaskPoolManager.java
index e347300..b8d8050 100644
--- 
a/server/src/main/java/org/apache/iotdb/db/engine/compaction/CompactionMergeTaskPoolManager.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/engine/compaction/CompactionMergeTaskPoolManager.java
@@ -201,18 +201,20 @@ public class CompactionMergeTaskPoolManager implements 
IService {
 
   public synchronized void submitTask(StorageGroupCompactionTask 
storageGroupCompactionTask)
       throws RejectedExecutionException {
-    if (pool != null && !pool.isTerminated()) {
-      String storageGroup = storageGroupCompactionTask.getStorageGroupName();
-      boolean isCompacting = sgCompactionStatus.computeIfAbsent(storageGroup, 
k -> false);
-      if (isCompacting) {
-        return;
+    if (config.getCompactionStrategy() == CompactionStrategy.LEVEL_COMPACTION) 
{
+      if (pool != null && !pool.isTerminated()) {
+        String storageGroup = storageGroupCompactionTask.getStorageGroupName();
+        boolean isCompacting = 
sgCompactionStatus.computeIfAbsent(storageGroup, k -> false);
+        if (isCompacting) {
+          return;
+        }
+        storageGroupCompactionTask.setSgCompactionStatus(sgCompactionStatus);
+        sgCompactionStatus.put(storageGroup, true);
+        Future<Void> future = pool.submit(storageGroupCompactionTask);
+        storageGroupTasks
+            .computeIfAbsent(storageGroup, k -> new CopyOnWriteArrayList<>())
+            .add(future);
       }
-      storageGroupCompactionTask.setSgCompactionStatus(sgCompactionStatus);
-      sgCompactionStatus.put(storageGroup, true);
-      Future<Void> future = pool.submit(storageGroupCompactionTask);
-      storageGroupTasks
-          .computeIfAbsent(storageGroup, k -> new CopyOnWriteArrayList<>())
-          .add(future);
     }
   }
 
diff --git 
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
 
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
index 43f4dbc..6e589d3 100755
--- 
a/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
+++ 
b/server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
@@ -24,7 +24,6 @@ import org.apache.iotdb.db.conf.IoTDBDescriptor;
 import org.apache.iotdb.db.conf.directories.DirectoryManager;
 import org.apache.iotdb.db.engine.StorageEngine;
 import org.apache.iotdb.db.engine.compaction.CompactionMergeTaskPoolManager;
-import org.apache.iotdb.db.engine.compaction.CompactionStrategy;
 import org.apache.iotdb.db.engine.compaction.StorageGroupCompactionTask;
 import org.apache.iotdb.db.engine.compaction.TsFileManagement;
 import org.apache.iotdb.db.engine.fileSystem.SystemFileFactory;
@@ -1953,12 +1952,10 @@ public class StorageGroupProcessor {
         "signal closing storage group condition in {}",
         logicalStorageGroupName + "-" + virtualStorageGroupId);
 
-    if (config.getCompactionStrategy() == CompactionStrategy.LEVEL_COMPACTION) 
{
-      CompactionMergeTaskPoolManager.getInstance()
-          .submitTask(
-              new CompactionOnePartitionTask(
-                  logicalStorageGroupName, tsFileProcessor.getTimeRangeId()));
-    }
+    CompactionMergeTaskPoolManager.getInstance()
+        .submitTask(
+            new CompactionOnePartitionTask(
+                logicalStorageGroupName, tsFileProcessor.getTimeRangeId()));
   }
 
   public class CompactionOnePartitionTask extends StorageGroupCompactionTask {

Reply via email to