This is an automated email from the ASF dual-hosted git repository.

haonan pushed a commit to branch rel/0.12
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/rel/0.12 by this push:
     new 6430b50  [To rel/0.12] Print the file path while meeting error in case 
of reading chunk (#4285)
6430b50 is described below

commit 6430b506ef25ee80490da0827b585c599d7186df
Author: Jackie Tien <[email protected]>
AuthorDate: Mon Nov 1 14:31:03 2021 +0800

    [To rel/0.12] Print the file path while meeting error in case of reading 
chunk (#4285)
---
 .../org/apache/iotdb/db/utils/FileLoaderUtils.java | 33 ++++++++++++++--------
 1 file changed, 22 insertions(+), 11 deletions(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/utils/FileLoaderUtils.java 
b/server/src/main/java/org/apache/iotdb/db/utils/FileLoaderUtils.java
index 0a55b54..2610dec 100644
--- a/server/src/main/java/org/apache/iotdb/db/utils/FileLoaderUtils.java
+++ b/server/src/main/java/org/apache/iotdb/db/utils/FileLoaderUtils.java
@@ -40,6 +40,9 @@ import org.apache.iotdb.tsfile.read.reader.IChunkReader;
 import org.apache.iotdb.tsfile.read.reader.IPageReader;
 import org.apache.iotdb.tsfile.read.reader.chunk.ChunkReader;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import java.io.IOException;
 import java.util.List;
 import java.util.Map.Entry;
@@ -47,6 +50,8 @@ import java.util.Set;
 
 public class FileLoaderUtils {
 
+  private static final Logger logger = 
LoggerFactory.getLogger(FileLoaderUtils.class);
+
   private FileLoaderUtils() {}
 
   public static void checkTsFileResource(TsFileResource tsFileResource) throws 
IOException {
@@ -157,18 +162,24 @@ public class FileLoaderUtils {
     if (chunkMetaData == null) {
       throw new IOException("Can't init null chunkMeta");
     }
-    IChunkReader chunkReader;
-    IChunkLoader chunkLoader = chunkMetaData.getChunkLoader();
-    if (chunkLoader instanceof MemChunkLoader) {
-      MemChunkLoader memChunkLoader = (MemChunkLoader) chunkLoader;
-      chunkReader = new MemChunkReader(memChunkLoader.getChunk(), timeFilter);
-    } else {
-      Chunk chunk = chunkLoader.loadChunk(chunkMetaData);
-      chunk.setFromOldFile(chunkMetaData.isFromOldTsFile());
-      chunkReader = new ChunkReader(chunk, timeFilter);
-      chunkReader.hasNextSatisfiedPage();
+    try {
+      IChunkReader chunkReader;
+      IChunkLoader chunkLoader = chunkMetaData.getChunkLoader();
+      if (chunkLoader instanceof MemChunkLoader) {
+        MemChunkLoader memChunkLoader = (MemChunkLoader) chunkLoader;
+        chunkReader = new MemChunkReader(memChunkLoader.getChunk(), 
timeFilter);
+      } else {
+        Chunk chunk = chunkLoader.loadChunk(chunkMetaData);
+        chunk.setFromOldFile(chunkMetaData.isFromOldTsFile());
+        chunkReader = new ChunkReader(chunk, timeFilter);
+        chunkReader.hasNextSatisfiedPage();
+      }
+      return chunkReader.loadPageReaderList();
+    } catch (IOException e) {
+      logger.error(
+          "Something wrong happened while reading chunk from " + 
chunkMetaData.getFilePath());
+      throw e;
     }
-    return chunkReader.loadPageReaderList();
   }
 
   public static List<ChunkMetadata> getChunkMetadataList(Path path, String 
filePath)

Reply via email to