You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by xi...@apache.org on 2022/08/19 03:22:08 UTC
[iotdb] branch master updated: fix path (#7049)
This is an automated email from the ASF dual-hosted git repository.
xingtanzjr 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 9e0512a144 fix path (#7049)
9e0512a144 is described below
commit 9e0512a1442e957951a485ddbc42b0d1f5012748
Author: Alan Choo <43...@users.noreply.github.com>
AuthorDate: Fri Aug 19 11:22:02 2022 +0800
fix path (#7049)
---
.../iotdb/db/wal/recover/WALNodeRecoverTask.java | 3 +--
.../iotdb/db/wal/recover/WALRecoverManager.java | 20 +++++++++++++++++---
2 files changed, 18 insertions(+), 5 deletions(-)
diff --git a/server/src/main/java/org/apache/iotdb/db/wal/recover/WALNodeRecoverTask.java b/server/src/main/java/org/apache/iotdb/db/wal/recover/WALNodeRecoverTask.java
index cdc9d92cca..d5a13e2596 100644
--- a/server/src/main/java/org/apache/iotdb/db/wal/recover/WALNodeRecoverTask.java
+++ b/server/src/main/java/org/apache/iotdb/db/wal/recover/WALNodeRecoverTask.java
@@ -199,9 +199,8 @@ public class WALNodeRecoverTask implements Runnable {
for (MemTableInfo memTableInfo : memTableId2Info.values()) {
firstValidVersionId = Math.min(firstValidVersionId, memTableInfo.getFirstFileVersionId());
- File tsFile = new File(memTableInfo.getTsFilePath());
UnsealedTsFileRecoverPerformer recoverPerformer =
- walRecoverManger.removeRecoverPerformer(tsFile.getAbsolutePath());
+ walRecoverManger.removeRecoverPerformer(new File(memTableInfo.getTsFilePath()));
if (recoverPerformer != null) {
memTableId2RecoverPerformer.put(memTableInfo.getMemTableId(), recoverPerformer);
}
diff --git a/server/src/main/java/org/apache/iotdb/db/wal/recover/WALRecoverManager.java b/server/src/main/java/org/apache/iotdb/db/wal/recover/WALRecoverManager.java
index e4a43dae39..27e54202ca 100644
--- a/server/src/main/java/org/apache/iotdb/db/wal/recover/WALRecoverManager.java
+++ b/server/src/main/java/org/apache/iotdb/db/wal/recover/WALRecoverManager.java
@@ -176,13 +176,27 @@ public class WALRecoverManager {
if (hasStarted) {
logger.error("Cannot recover tsfile from wal because wal recovery has already started");
} else {
- absolutePath2RecoverPerformer.put(recoverPerformer.getTsFileAbsolutePath(), recoverPerformer);
+ try {
+ String canonicalPath = recoverPerformer.getTsFileResource().getTsFile().getCanonicalPath();
+ absolutePath2RecoverPerformer.put(canonicalPath, recoverPerformer);
+ } catch (IOException e) {
+ logger.error(
+ "Fail to add recover performer for file {}",
+ recoverPerformer.getTsFileAbsolutePath(),
+ e);
+ }
}
return recoverPerformer.getRecoverListener();
}
- UnsealedTsFileRecoverPerformer removeRecoverPerformer(String absolutePath) {
- return absolutePath2RecoverPerformer.remove(absolutePath);
+ UnsealedTsFileRecoverPerformer removeRecoverPerformer(File file) {
+ try {
+ String canonicalPath = file.getCanonicalPath();
+ return absolutePath2RecoverPerformer.remove(canonicalPath);
+ } catch (IOException e) {
+ logger.error("Fail to remove recover performer for file {}", file, e);
+ }
+ return null;
}
public CountDownLatch getAllDataRegionScannedLatch() {