This is an automated email from the ASF dual-hosted git repository. jackietien pushed a commit to branch MoreLog in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 4cd2998fbe22344e811e5161933920db77c4c6df Author: JackieTien97 <[email protected]> AuthorDate: Thu Oct 29 10:21:00 2020 +0800 add more logs in LocalTsFileInput --- .../iotdb/tsfile/read/reader/LocalTsFileInput.java | 60 +++++++++++++++++----- 1 file changed, 48 insertions(+), 12 deletions(-) diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/LocalTsFileInput.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/LocalTsFileInput.java index 6c2e701..de314b1 100644 --- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/LocalTsFileInput.java +++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/reader/LocalTsFileInput.java @@ -25,39 +25,70 @@ import java.nio.channels.Channels; import java.nio.channels.FileChannel; import java.nio.file.Path; import java.nio.file.StandardOpenOption; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class LocalTsFileInput implements TsFileInput { - private FileChannel channel; + private static final Logger logger = LoggerFactory.getLogger(LocalTsFileInput.class); + + private final FileChannel channel; + private final String filePath; public LocalTsFileInput(Path file) throws IOException { channel = FileChannel.open(file, StandardOpenOption.READ); + filePath = file.toString(); } @Override public long size() throws IOException { - return channel.size(); + try { + return channel.size(); + } catch (IOException e) { + logger.error("Error happened while getting {} size", filePath); + throw e; + } } @Override public long position() throws IOException { - return channel.position(); + try { + return channel.position(); + } catch (IOException e) { + logger.error("Error happened while getting {} current position", filePath); + throw e; + } } @Override public TsFileInput position(long newPosition) throws IOException { - channel.position(newPosition); - return this; + try { + channel.position(newPosition); + return this; + } catch (IOException e) { + logger.error("Error happened while changing {} position to {}", filePath, newPosition); + throw e; + } } @Override public int read(ByteBuffer dst) throws IOException { - return channel.read(dst); + try { + return channel.read(dst); + } catch (IOException e) { + logger.error("Error happened while reading {} from current position", filePath); + throw e; + } } @Override public int read(ByteBuffer dst, long position) throws IOException { - return channel.read(dst, position); + try { + return channel.read(dst, position); + } catch (IOException e) { + logger.error("Error happened while reading {} from position {}", filePath, position); + throw e; + } } @Override @@ -66,27 +97,32 @@ public class LocalTsFileInput implements TsFileInput { } @Override - public int read(byte[] b, int off, int len) throws IOException { + public int read(byte[] b, int off, int len) { throw new UnsupportedOperationException(); } @Override - public FileChannel wrapAsFileChannel() throws IOException { + public FileChannel wrapAsFileChannel() { return channel; } @Override - public InputStream wrapAsInputStream() throws IOException { + public InputStream wrapAsInputStream() { return Channels.newInputStream(channel); } @Override public void close() throws IOException { - channel.close(); + try { + channel.close(); + } catch (IOException e) { + logger.error("Error happened while closing {}", filePath); + throw e; + } } @Override - public int readInt() throws IOException { + public int readInt() { throw new UnsupportedOperationException(); } }
