choubenson commented on a change in pull request #5316:
URL: https://github.com/apache/iotdb/pull/5316#discussion_r834994820
##########
File path:
server/src/main/java/org/apache/iotdb/db/engine/compaction/task/CompactionExceptionHandler.java
##########
@@ -182,38 +194,40 @@ private static boolean handleWhenAllSourceFilesExist(
}
/**
- * Some source files are lost, check if the compaction has finished. If the
compaction has
- * finished, delete the remaining source files and compaction mods files. If
the compaction has
- * not finished, set the allowCompaction in tsFileManager to false and print
some error logs.
+ * Some source files are lost, check if all target files are complete. If
all target files are
+ * complete, delete the remaining source files and compaction mods files. If
some target files are
+ * not complete, set the allowCompaction in tsFileManager to false and print
some error logs.
*/
- public static boolean handleWhenSomeSourceFilesLost(
- String storageGroup,
- List<TsFileResource> seqFileList,
- List<TsFileResource> unseqFileList,
- List<TsFileResource> targetFileList,
- List<TsFileResource> lostSourceFiles)
+ private static boolean handleWhenSomeSourceFilesLost(
+ List<TsFileResource> targetResourceList,
+ List<TsFileResource> sourceSeqResourceList,
+ List<TsFileResource> sourceUnseqResourceList,
+ List<TsFileResource> lostSourceResourceList,
+ String fullStorageGroupName)
throws IOException {
- if (!checkIsTargetFilesComplete(targetFileList, lostSourceFiles,
storageGroup)) {
+ // check whether is all target files complete
+ if (!checkIsTargetFilesComplete(
+ targetResourceList, lostSourceResourceList, fullStorageGroupName)) {
return false;
}
// delete source files
- for (TsFileResource unseqFile : unseqFileList) {
- unseqFile.remove();
- unseqFile.setStatus(TsFileResourceStatus.DELETED);
+ for (TsFileResource resource : sourceSeqResourceList) {
+ resource.setStatus(TsFileResourceStatus.DELETED);
+ resource.remove();
Review comment:
If some source files have been deleted, resource memory must be updated
before. Therefore, it is unnecessary to remove here.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]