[ 
https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13432958#comment-13432958
 ] 

Jie Huang commented on HBASE-6516:
----------------------------------

Furthermore, while ".tableinfo" file is missing, there won't be any IOException 
thrown in *getTableDescriptor(FileSystem fs. Path tableDir)*. More details can 
be found in the following code.
{code}
  public static HTableDescriptor getTableDescriptor(FileSystem fs, Path 
tableDir)
  throws IOException, NullPointerException {
    if (tableDir == null) throw new NullPointerException();
    FileStatus status = getTableInfoPath(fs, tableDir);
    if (status == null) return null; // return W/O any IOException
  ...
  
  private static FileStatus getTableInfoPath(final FileSystem fs,
      final Path tabledir)
  throws IOException {
    FileStatus [] status = FSUtils.listStatus(fs, tabledir, new PathFilter() {
      @Override
      public boolean accept(Path p) {
        // Accept any file that starts with TABLEINFO_NAME
        return p.getName().startsWith(TABLEINFO_NAME);
      }
    });
    if (status == null || status.length < 1) return null; // cannot list 
.tableinfo file under tableDir directory.
{code}
For such kind of case, to modify *getTableDescriptor* still cannot solve the 
problem here as well. Any idea?
                
> hbck cannot detect any IOException while ".tableinfo" file is missing
> ---------------------------------------------------------------------
>
>                 Key: HBASE-6516
>                 URL: https://issues.apache.org/jira/browse/HBASE-6516
>             Project: HBase
>          Issue Type: Bug
>          Components: hbck
>    Affects Versions: 0.94.0, 0.96.0
>            Reporter: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch
>
>
> HBaseFsck checks those missing .tableinfo files in loadHdfsRegionInfos() 
> function. However, no IoException will be catched while .tableinfo is 
> missing, since "FSTableDescriptors.getTableDescriptor" doesn't throw any 
> IoException.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to