You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by qi...@apache.org on 2020/11/18 12:17:43 UTC
[iotdb] branch rel/0.11 updated: fix level compaction recover file
not exist bug (#2067)
This is an automated email from the ASF dual-hosted git repository.
qiaojialin pushed a commit to branch rel/0.11
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/rel/0.11 by this push:
new 7dca3fe fix level compaction recover file not exist bug (#2067)
7dca3fe is described below
commit 7dca3fe26dbffa4e2ad6a6f7b2a489ee6c43a737
Author: zhanglingzhe0820 <44...@qq.com>
AuthorDate: Wed Nov 18 20:10:06 2020 +0800
fix level compaction recover file not exist bug (#2067)
(cherry picked from commit 50b6b79fd76d8acdda5e5d0d451e255f5c17e07f)
---
.../level/LevelCompactionTsFileManagement.java | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java b/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java
index 3cb747e..a6abaa1 100644
--- a/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java
+++ b/server/src/main/java/org/apache/iotdb/db/engine/compaction/level/LevelCompactionTsFileManagement.java
@@ -459,15 +459,15 @@ public class LevelCompactionTsFileManagement extends TsFileManagement {
long startTimeMillis = System.currentTimeMillis();
try {
logger.info("{} start to filter compaction condition", storageGroupName);
- CompactionLogger compactionLogger = new CompactionLogger(storageGroupDir,
- storageGroupName);
for (int i = 0; i < currMaxLevel - 1; i++) {
if (currMaxFileNumInEachLevel <= mergeResources.get(i).size()) {
- //level is numbered from 0
+ // level is numbered from 0
if (enableUnseqCompaction && !sequence && i == currMaxLevel - 2) {
// do not merge current unseq file level to upper level and just merge all of them to seq file
merge(isForceFullMerge, getTsFileList(true), mergeResources.get(i), Long.MAX_VALUE);
} else {
+ CompactionLogger compactionLogger = new CompactionLogger(storageGroupDir,
+ storageGroupName);
for (TsFileResource mergeResource : mergeResources.get(i)) {
compactionLogger.logFile(SOURCE_NAME, mergeResource.getTsFile());
}
@@ -505,15 +505,15 @@ public class LevelCompactionTsFileManagement extends TsFileManagement {
} finally {
writeUnlock();
}
+ compactionLogger.close();
+ File logFile = FSFactoryProducer.getFSFactory()
+ .getFile(storageGroupDir, storageGroupName + COMPACTION_LOG_NAME);
+ if (logFile.exists()) {
+ Files.delete(logFile.toPath());
+ }
}
}
}
- compactionLogger.close();
- File logFile = FSFactoryProducer.getFSFactory()
- .getFile(storageGroupDir, storageGroupName + COMPACTION_LOG_NAME);
- if (logFile.exists()) {
- Files.delete(logFile.toPath());
- }
} catch (Exception e) {
logger.error("Error occurred in Compaction Merge thread", e);
} finally {