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 2019/06/24 04:59:53 UTC
[incubator-iotdb] 01/03: filter mods file in recovery
This is an automated email from the ASF dual-hosted git repository.
qiaojialin pushed a commit to branch feature_async_close_tsfile
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git
commit a5c676054070da78a85c3e46df83bc686fd7da7d
Author: qiaojialin <64...@qq.com>
AuthorDate: Mon Jun 24 11:10:38 2019 +0800
filter mods file in recovery
---
.../org/apache/iotdb/db/engine/filenodeV2/FileNodeProcessorV2.java | 6 +++---
.../java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java | 3 +++
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/engine/filenodeV2/FileNodeProcessorV2.java b/iotdb/src/main/java/org/apache/iotdb/db/engine/filenodeV2/FileNodeProcessorV2.java
index e37784b..9340932 100755
--- a/iotdb/src/main/java/org/apache/iotdb/db/engine/filenodeV2/FileNodeProcessorV2.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/engine/filenodeV2/FileNodeProcessorV2.java
@@ -144,7 +144,7 @@ public class FileNodeProcessorV2 {
if (!fileFolder.exists()) {
continue;
}
- for (File tsfile: fileFolder.listFiles()) {
+ for (File tsfile: fileFolder.listFiles(file->!file.getName().contains("mods"))) {
tsFiles.add(tsfile);
}
}
@@ -157,7 +157,7 @@ public class FileNodeProcessorV2 {
if (!fileFolder.exists()) {
continue;
}
- for (File tsfile: fileFolder.listFiles()) {
+ for (File tsfile: fileFolder.listFiles(file->!file.getName().contains("mods"))) {
tsFiles.add(tsfile);
}
}
@@ -436,7 +436,7 @@ public class FileNodeProcessorV2 {
// delete data in memory of unsealed file
if (!tsFileResource.isClosed()) {
UnsealedTsFileProcessorV2 tsfileProcessor = tsFileResource.getUnsealedFileProcessor();
- tsfileProcessor.delete(deviceId, deletion.getPathString(), deletion.getTimestamp());
+ tsfileProcessor.delete(deviceId, deletion.getMeasurement(), deletion.getTimestamp());
}
// add a record in case of rollback
diff --git a/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java b/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
index 32990e2..677bcbb 100644
--- a/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
+++ b/iotdb/src/main/java/org/apache/iotdb/db/engine/memtable/AbstractMemTable.java
@@ -172,6 +172,9 @@ public abstract class AbstractMemTable implements IMemTable {
Map<String, IWritableMemChunk> deviceMap = memTableMap.get(deviceId);
if (deviceMap != null) {
IWritableMemChunk chunk = deviceMap.get(measurementId);
+ if (chunk == null) {
+ return true;
+ }
IWritableMemChunk newChunk = filterChunk(chunk, timestamp);
if (newChunk != null) {
deviceMap.put(measurementId, newChunk);