This is an automated email from the ASF dual-hosted git repository.
qiaojialin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 16349e9 [IOTDB-2417]Cross compaction selector bug (#4853)
16349e9 is described below
commit 16349e9ae3fcef072e611a20088cba6e76b72125
Author: 周沛辰 <[email protected]>
AuthorDate: Mon Jan 17 23:45:07 2022 +0800
[IOTDB-2417]Cross compaction selector bug (#4853)
---
.../cross/inplace/InplaceCompactionSelector.java | 41 ++++++++++++----------
1 file changed, 22 insertions(+), 19 deletions(-)
diff --git
a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/InplaceCompactionSelector.java
b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/InplaceCompactionSelector.java
index 6190fb4..691f134 100644
---
a/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/InplaceCompactionSelector.java
+++
b/server/src/main/java/org/apache/iotdb/db/engine/compaction/cross/inplace/InplaceCompactionSelector.java
@@ -132,25 +132,28 @@ public class InplaceCompactionSelector extends
AbstractCrossSpaceCompactionSelec
// cached during selection
mergeResource.setCacheDeviceMeta(true);
- AbstractCompactionTask compactionTask =
- taskFactory.createTask(
- logicalStorageGroupName,
- virtualGroupId,
- timePartition,
- mergeResource,
- storageGroupDir,
- sequenceFileList,
- unsequenceFileList,
- mergeFiles[0],
- mergeFiles[1],
- fileSelector.getConcurrentMergeNum());
-
CompactionTaskManager.getInstance().addTaskToWaitingQueue(compactionTask);
- taskSubmitted = true;
- LOGGER.info(
- "{} [Compaction] submit a task with {} sequence file and {} unseq
files",
- logicalStorageGroupName + "-" + virtualGroupId,
- mergeResource.getSeqFiles().size(),
- mergeResource.getUnseqFiles().size());
+ if (mergeFiles[0].size() > 0 && mergeFiles[1].size() > 0) {
+ AbstractCompactionTask compactionTask =
+ taskFactory.createTask(
+ logicalStorageGroupName,
+ virtualGroupId,
+ timePartition,
+ mergeResource,
+ storageGroupDir,
+ sequenceFileList,
+ unsequenceFileList,
+ mergeFiles[0],
+ mergeFiles[1],
+ fileSelector.getConcurrentMergeNum());
+
CompactionTaskManager.getInstance().addTaskToWaitingQueue(compactionTask);
+ taskSubmitted = true;
+ LOGGER.info(
+ "{} [Compaction] submit a task with {} sequence file and {} unseq
files",
+ logicalStorageGroupName + "-" + virtualGroupId,
+ mergeResource.getSeqFiles().size(),
+ mergeResource.getUnseqFiles().size());
+ }
+
} catch (MergeException | IOException e) {
LOGGER.error("{} cannot select file for cross space compaction",
logicalStorageGroupName, e);
}