[ https://issues.apache.org/jira/browse/HBASE-18312?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16074557#comment-16074557 ]
Jingcheng Du edited comment on HBASE-18312 at 7/5/17 10:39 AM: --------------------------------------------------------------- bq. static class FileLinkInputStream extends InputStream Revert the changes of the modifier of FileLinkInputStream from default back to private? was (Author: jingcheng.du): Revert the changes of the modifier of FileLinkInputStream from default back to private? > Ineffective handling of FileNotFoundException in > FileLink$FileLinkInputStream.tryOpen() > --------------------------------------------------------------------------------------- > > Key: HBASE-18312 > URL: https://issues.apache.org/jira/browse/HBASE-18312 > Project: HBase > Issue Type: Bug > Reporter: Ted Yu > Attachments: 18312.v1.txt, 18312.v2.txt, 18312.v4.txt, 18312.v5.txt > > > Found the following in region server log: > {code} > 2017-07-03 11:22:04,669 WARN > [regionserver/a.b.c.d:16020-shortCompactions-1499094046361] > retry.RetryInvocationHandler: Exception while invoking > ClientNamenodeProtocolTranslatorPB.getBlockLocations over e.f.g.h:8020. Not > retrying because try once and fail. > org.apache.hadoop.ipc.RemoteException(java.io.FileNotFoundException): File > does not exist: /hbase/data/default/X/4d61af9d1cbcc5fe2a5cbddbfc92fe7e/ > K/47222a9cbd294f499f49de92ecf330ee > at > org.apache.hadoop.hdfs.server.namenode.INodeFile.valueOf(INodeFile.java:71) > at > org.apache.hadoop.hdfs.server.namenode.INodeFile.valueOf(INodeFile.java:61) > ... > at > org.apache.hadoop.hbase.io.FileLink$FileLinkInputStream.tryOpen(FileLink.java:291) > at > org.apache.hadoop.hbase.io.FileLink$FileLinkInputStream.<init>(FileLink.java:122) > at > org.apache.hadoop.hbase.io.FileLink$FileLinkInputStream.<init>(FileLink.java:113) > at org.apache.hadoop.hbase.io.FileLink.open(FileLink.java:404) > at > org.apache.hadoop.hbase.io.FSDataInputStreamWrapper.<init>(FSDataInputStreamWrapper.java:98) > at > org.apache.hadoop.hbase.io.FSDataInputStreamWrapper.<init>(FSDataInputStreamWrapper.java:83) > {code} > Here is related code: > {code} > private FSDataInputStream tryOpen() throws IOException { > for (Path path: fileLink.getLocations()) { > ... > } catch (FileNotFoundException e) { > // Try another file location > } > {code} > The intention is to try possible locations for the linked file. > However, RemoteException was the exception encountered. This makes the above > catch clause ineffective. -- This message was sent by Atlassian JIRA (v6.4.14#64029)