You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jie Huang (JIRA)" <ji...@apache.org> on 2012/08/06 14:48:02 UTC

[jira] [Created] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Jie Huang created HBASE-6516:
--------------------------------

             Summary: 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


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

        

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jie Huang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jie Huang updated HBASE-6516:
-----------------------------

    Attachment: hbase-6516-v2.patch
    
> 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-v2.patch, hbase-6516.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

        

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Ted Yu (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ted Yu updated HBASE-6516:
--------------------------

    Fix Version/s:     (was: 0.92.2)
                   0.92.3
    
> 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
>            Assignee: Jie Huang
>             Fix For: 0.96.0, 0.92.3, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13456226#comment-13456226 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.94 #469 (See [https://builds.apache.org/job/HBase-0.94/469/])
    HBASE-6792 Remove interface audience annotations in 0.94/0.92 introduced by HBASE-6516 (Revision 1384947)

     Result = SUCCESS
jmhsieh : 
Files : 
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.96.0, 0.92.3, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Elliott Clark (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13456179#comment-13456179 ] 

Elliott Clark commented on HBASE-6516:
--------------------------------------

An InterfaceAudience slipped into 0.94 here.  It breaks 0.94 for older versions of hadoop.
                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.96.0, 0.92.3, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Hsieh updated HBASE-6516:
----------------------------------

    Fix Version/s: 0.94.2
                   0.96.0
                   0.92.2
    
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.2, 0.96.0, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Hsieh updated HBASE-6516:
----------------------------------

    Attachment: hbase-6516-v5a.patch

prevoius version didn't include an added file.
                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13460757#comment-13460757 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.94-security #53 (See [https://builds.apache.org/job/HBase-0.94-security/53/])
    HBASE-6792 Remove interface audience annotations in 0.94/0.92 introduced by HBASE-6516 (Revision 1384947)

     Result = SUCCESS
jmhsieh : 
Files : 
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.3, 0.94.2, 0.96.0
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Hsieh updated HBASE-6516:
----------------------------------

    Attachment: hbase-6516-94-v5.patch
    
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jie Huang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13435159#comment-13435159 ] 

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

@Jonathan, Any idea about the comment? thanks.
                
> 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

        

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jie Huang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jie Huang updated HBASE-6516:
-----------------------------

    Attachment: hbase-6516-v4.patch

Thanks. How about this one?
                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jie Huang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13437846#comment-13437846 ] 

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

Agree with you to some extent. However I still have one question. How about .META. table? Since for that kind of table, it is quite acceptable not to have the .tableinfo file there. Actually, it is not an IOException or TableInfoMissingException for that case. Shall we handle this case in  *getTableDescriptor()* ? OR let its final caller to handle it?

Besides, I found the HBaseIOException was introduced in HBASE-6586, so will provide the new patch later.
                
> 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

        

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13446049#comment-13446049 ] 

Jonathan Hsieh commented on HBASE-6516:
---------------------------------------

Can you test these to see if they hang?  We've touched a few places and we need to dig into code to see if they are related.  The TestHBaseFsck one is a little concerning since we modified it.

{code}
jon@swoop:~/proj/hbase/dev-support$ ./findHangingTest.sh  https://builds.apache.org/job/PreCommit-HBASE-Build/2750/consoleText
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  238k    0  238k    0     0   241k      0 --:--:-- --:--:-- --:--:--  316k
Hanging test: Running org.apache.hadoop.hbase.master.TestDistributedLogSplitting
Hanging test: Running org.apache.hadoop.hbase.master.TestMaster
Hanging test: Running org.apache.hadoop.hbase.util.TestHBaseFsck
Hanging test: Running org.apache.hadoop.hbase.backup.example.TestZooKeeperTableArchiveClient
{code}

                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Hsieh updated HBASE-6516:
----------------------------------

    Attachment: hbase-6516-v5.patch

fixed some nits.
                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13448352#comment-13448352 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.94-security-on-Hadoop-23 #7 (See [https://builds.apache.org/job/HBase-0.94-security-on-Hadoop-23/7/])
    HBASE-6516 hbck cannot detect any IOException while ".tableinfo" file is missing (Jie Huang) (Revision 1380759)

     Result = FAILURE
jmhsieh : 
Files : 
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/util/FSTableDescriptors.java
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java
* /hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.2, 0.96.0, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13447743#comment-13447743 ] 

Jonathan Hsieh commented on HBASE-6516:
---------------------------------------

Looks pretty good.  I'm going to fix some nits and spacing issues on and let the hadoopqa bot give a try.

One major thing was that this change was missing (in v3 but not v4) which prevented compilation: (I've going to fix for the next version.).

{code}
@@ -258,7 +270,7 @@
    * @return The 'current' tableinfo file.
    * @throws IOException
    */
-  private static FileStatus getTableInfoPath(final FileSystem fs,
+  public static FileStatus getTableInfoPath(final FileSystem fs,
       final Path tabledir)
   throws IOException {
     FileStatus [] status = FSUtils.listStatus(fs, tabledir, new PathFilter() {
{code}

{code}
+  @Test
+  public void testHbckMissingTableinfo() throws Exception {
+    String table = "tabeInfo";
+    FileSystem fs = null;
+    Path tableinfo = null;
+ 
{code}
                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13447898#comment-13447898 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.94 #447 (See [https://builds.apache.org/job/HBase-0.94/447/])
    HBASE-6516 hbck cannot detect any IOException while ".tableinfo" file is missing (Jie Huang) (Revision 1380759)

     Result = FAILURE
jmhsieh : 
Files : 
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/util/FSTableDescriptors.java
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java
* /hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.2, 0.96.0, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jie Huang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jie Huang updated HBASE-6516:
-----------------------------

    Attachment: hbase-6516.patch

Here proposed a possible fix. The basic idea is to check if the HTableDescriptor *htd* is null. If it is null, we'd better to print out the error message and throw an IOException accordingly. Any comment? Thanks.
                
> 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
>
>
> 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

        

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13448407#comment-13448407 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.92-security #142 (See [https://builds.apache.org/job/HBase-0.92-security/142/])
    HBASE-6516 hbck cannot detect any IOException while ".tableinfo" file is missing (Jie Huang) (Revision 1380760)

     Result = SUCCESS
jmhsieh : 
Files : 
* /hbase/branches/0.92/CHANGES.txt
* /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java
* /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/util/FSTableDescriptors.java
* /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java
* /hbase/branches/0.92/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.2, 0.96.0, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13447847#comment-13447847 ] 

Jonathan Hsieh commented on HBASE-6516:
---------------------------------------

Builds against trunk tested and all test passed for me locally.  Did some minor tweaks for 92/94, TestHBaseFsck passes.
                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jie Huang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13439982#comment-13439982 ] 

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

Thanks. I will upload a new patch soon. 
                
> 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

        

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13469915#comment-13469915 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.94-security-on-Hadoop-23 #8 (See [https://builds.apache.org/job/HBase-0.94-security-on-Hadoop-23/8/])
    HBASE-6792 Remove interface audience annotations in 0.94/0.92 introduced by HBASE-6516 (Revision 1384947)

     Result = FAILURE
jmhsieh : 
Files : 
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.3, 0.94.2, 0.96.0
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Comment Edited] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13447743#comment-13447743 ] 

Jonathan Hsieh edited comment on HBASE-6516 at 9/5/12 2:14 AM:
---------------------------------------------------------------

Looks pretty good.  I'm going to fix some nits and spacing issues on and let the hadoopqa bot give a try.

One major thing was that this change was missing (in v3 but not v4) which prevented compilation: (I've going to fix for the next version.).

{code}
@@ -258,7 +270,7 @@
    * @return The 'current' tableinfo file.
    * @throws IOException
    */
-  private static FileStatus getTableInfoPath(final FileSystem fs,
+  public static FileStatus getTableInfoPath(final FileSystem fs,
       final Path tabledir)
   throws IOException {
     FileStatus [] status = FSUtils.listStatus(fs, tabledir, new PathFilter() {
{code}

Fixed a few minor nits like this spelling error.
{code}
+  @Test
+  public void testHbckMissingTableinfo() throws Exception {
+    String table = "tabeInfo";
+    FileSystem fs = null;
+    Path tableinfo = null;
+ 
{code}
                
      was (Author: jmhsieh):
    Looks pretty good.  I'm going to fix some nits and spacing issues on and let the hadoopqa bot give a try.

One major thing was that this change was missing (in v3 but not v4) which prevented compilation: (I've going to fix for the next version.).

{code}
@@ -258,7 +270,7 @@
    * @return The 'current' tableinfo file.
    * @throws IOException
    */
-  private static FileStatus getTableInfoPath(final FileSystem fs,
+  public static FileStatus getTableInfoPath(final FileSystem fs,
       final Path tabledir)
   throws IOException {
     FileStatus [] status = FSUtils.listStatus(fs, tabledir, new PathFilter() {
{code}

{code}
+  @Test
+  public void testHbckMissingTableinfo() throws Exception {
+    String table = "tabeInfo";
+    FileSystem fs = null;
+    Path tableinfo = null;
+ 
{code}
                  
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13456186#comment-13456186 ] 

Jonathan Hsieh commented on HBASE-6516:
---------------------------------------

since its been about 2 weeks, I'll file a new issue and fix.  Thanks for finding this elliot.
                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.96.0, 0.92.3, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Hsieh updated HBASE-6516:
----------------------------------

    Resolution: Fixed
        Status: Resolved  (was: Patch Available)

Thanks Jie Huang!  I've commited to trunk/0.94/0.92
                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13447901#comment-13447901 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.92 #553 (See [https://builds.apache.org/job/HBase-0.92/553/])
    HBASE-6516 hbck cannot detect any IOException while ".tableinfo" file is missing (Jie Huang) (Revision 1380760)

     Result = FAILURE
jmhsieh : 
Files : 
* /hbase/branches/0.92/CHANGES.txt
* /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java
* /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/util/FSTableDescriptors.java
* /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java
* /hbase/branches/0.92/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.2, 0.96.0, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13432242#comment-13432242 ] 

Jonathan Hsieh commented on HBASE-6516:
---------------------------------------

[~grace.huang]  Hm.. maybe we should fix FSTableDescriptors.getTableDescriptor methods instead of this?  If you look at the current code, depending on how you interpret it, the public three arg method is inconsistent with its public two argument counterpart.  

So either:
1) the three arg version wrongly has a 'throws IOException' in its signature, and its two argument counterpart should also not throw exceptions, *or*
2) the three argument version throw exceptions and the two argument counterpart should throw as well.  

I think I prefer #2.  What do you think?


                
> 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-v2.patch, hbase-6516.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

        

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jie Huang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13429654#comment-13429654 ] 

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

Thanks Andrew. I have modified the patch file accordingly. 
bq. Have you tried running the unit test suite with your patch applied? What is the result?
Yes, I have verified all unit tests before uploading the patch file.
                
> 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-v2.patch, hbase-6516.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

        

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13456252#comment-13456252 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.92 #577 (See [https://builds.apache.org/job/HBase-0.92/577/])
    HBASE-6792 Remove interface audience annotations in 0.94/0.92 introduced by HBASE-6516 (Revision 1384948)

     Result = SUCCESS
jmhsieh : 
Files : 
* /hbase/branches/0.92/CHANGES.txt
* /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.96.0, 0.92.3, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hadoop QA (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13445975#comment-13445975 ] 

Hadoop QA commented on HBASE-6516:
----------------------------------

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12543221/hbase-6516-v3.patch
  against trunk revision .

    +1 @author.  The patch does not contain any @author tags.

    +1 tests included.  The patch appears to include 6 new or modified tests.

    +1 hadoop2.0.  The patch compiles against the hadoop 2.0 profile.

    -1 javadoc.  The javadoc tool appears to have generated 110 warning messages.

    -1 javac.  The applied patch generated 5 javac compiler warnings (more than the trunk's current 4 warnings).

    -1 findbugs.  The patch appears to introduce 11 new Findbugs (version 1.3.9) warnings.

    +1 release audit.  The applied patch does not increase the total number of release audit warnings.

     -1 core tests.  The patch failed these unit tests:
     

Test results: https://builds.apache.org/job/PreCommit-HBASE-Build/2750//testReport/
Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/2750//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop2-compat.html
Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/2750//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/2750//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/2750//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings: https://builds.apache.org/job/PreCommit-HBASE-Build/2750//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output: https://builds.apache.org/job/PreCommit-HBASE-Build/2750//console

This message is automatically generated.
                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13429226#comment-13429226 ] 

Andrew Purtell commented on HBASE-6516:
---------------------------------------

>From the null test, you should pass that same string that is logged to the constructor of the new IOException.

Have you tried running the unit test suite with your patch applied? What is the result?
                
> 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
>
>
> 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

        

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13446070#comment-13446070 ] 

Jonathan Hsieh commented on HBASE-6516:
---------------------------------------

Ok, so upon further review I noticed with the old behavior, we would not have reported the error (there probabaly would have been in text, but not with the error reporter) and have continued.  For this patch, I think it should report the error and continue instead of percolating the exception and being unable to report the error.  

It looks like HBASE-5631 depends on this so I'll hold off on that until after this is is resolved.
                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13469996#comment-13469996 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.92-security #143 (See [https://builds.apache.org/job/HBase-0.92-security/143/])
    HBASE-6792 Remove interface audience annotations in 0.94/0.92 introduced by HBASE-6516 (Revision 1384948)

     Result = FAILURE
jmhsieh : 
Files : 
* /hbase/branches/0.92/CHANGES.txt
* /hbase/branches/0.92/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.3, 0.94.2, 0.96.0
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jie Huang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jie Huang updated HBASE-6516:
-----------------------------

    Attachment: hbase-6516-v3.patch

Update the patch file according to Jon's comments. One more unit-test case is added as well. Any idea, please feel free to let me know. 
                
> 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, hbase-6516-v3.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Hsieh updated HBASE-6516:
----------------------------------

    Assignee: Jie Huang
      Status: Patch Available  (was: Open)

Setting submit patch to let the hadoopqa bot test the patch.
                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13447952#comment-13447952 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-TRUNK #3300 (See [https://builds.apache.org/job/HBase-TRUNK/3300/])
    HBASE-6516 hbck cannot detect any IOException while ".tableinfo" file is missing (Jie Huang) (Revision 1380761)

     Result = FAILURE
jmhsieh : 
Files : 
* /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java
* /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSTableDescriptors.java
* /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java
* /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.2, 0.96.0, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13448173#comment-13448173 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #159 (See [https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/159/])
    HBASE-6516 hbck cannot detect any IOException while ".tableinfo" file is missing (Jie Huang) (Revision 1380761)

     Result = FAILURE
jmhsieh : 
Files : 
* /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java
* /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSTableDescriptors.java
* /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java
* /hbase/trunk/hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.2, 0.96.0, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13439680#comment-13439680 ] 

Jonathan Hsieh commented on HBASE-6516:
---------------------------------------

-ROOT- and .META. have always been special cases, so if that is the case with those tables, special case them.
                
> 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

        

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13446059#comment-13446059 ] 

Jonathan Hsieh commented on HBASE-6516:
---------------------------------------

The test is really helpful for understanding the ramifications of this.  

I don't think we want hbck to bail out if .tableinfo file is missing -- it shouldreport it as error and be allow to continue and finish without an exception so we can report all the errors at the end.  I looked at HBASE-5631, which is closely related, and I don't see a change to it changes there.

Hm.. it wasn't clear from reading the code that we expected the IOException.  (It ends up being a TableInfoMissingException right?)
{code}
+      fs.rename(tableinfo, new Path("/.tableinfo"));
+      
+      doFsck(conf, false); 
/// ADD: fail("We expect an IOException");
+    } catch (IOException ioe) {
+      assertNotNull("No IOException found while .tableinfo missing", ioe);
+    } finally {
+      fs.rename(new Path("/.tableinfo"), tableinfo);
+      deleteTable(table);
{code}


----

nits (most of these I'd fix on commit): 

new files (TableInfoMissingException) require an apache license at the top.

Minor spacing nit:
{code}
+                HConstants.ROOT_TABLE_NAME) ==0
{code}

Is capitalization of 'NO' intentional? also minor spacing nit.
{code}
-    if (status == null) return null;
+    if (status == null) throw new TableInfoMissingException("NO .tableinfo file under " +tableDir.toUri());
{code}

Don't think this change is necessary
{code}
-  @Test public void testReadingHTDFromFS() throws IOException {
+  @Test public void testReadingHTDFromFS() throws IOException, NullPointerException{
     final String name = "testReadingHTDFromFS";
{code}

                
> 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
>            Assignee: Jie Huang
>         Attachments: hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13448260#comment-13448260 ] 

Hudson commented on HBASE-6516:
-------------------------------

Integrated in HBase-0.94-security #51 (See [https://builds.apache.org/job/HBase-0.94-security/51/])
    HBASE-6516 hbck cannot detect any IOException while ".tableinfo" file is missing (Jie Huang) (Revision 1380759)

     Result = FAILURE
jmhsieh : 
Files : 
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/TableInfoMissingException.java
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/util/FSTableDescriptors.java
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java
* /hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java

                
> 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
>            Assignee: Jie Huang
>             Fix For: 0.92.2, 0.96.0, 0.94.2
>
>         Attachments: hbase-6516-94-v5.patch, hbase-6516.patch, hbase-6516-v2.patch, hbase-6516-v3.patch, hbase-6516-v4.patch, hbase-6516-v5a.patch, hbase-6516-v5.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
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jie Huang (JIRA)" <ji...@apache.org>.
    [ 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

        

[jira] [Commented] (HBASE-6516) hbck cannot detect any IOException while ".tableinfo" file is missing

Posted by "Jonathan Hsieh (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-6516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13435246#comment-13435246 ] 

Jonathan Hsieh commented on HBASE-6516:
---------------------------------------

The #2 suggestion is to remove the code that eats the exception in the two arg version and then have it throw the exception.  You'd need to inspect the places where that version of the method is called to make sure that the possible exceptions are handled properly.

{code}
 static HTableDescriptor getTableDescriptor(FileSystem fs,
      Path hbaseRootDir, String tableName) {
    HTableDescriptor htd = null;
//    try {
      htd = getTableDescriptor(fs, FSUtils.getTablePath(hbaseRootDir, tableName));
//    } catch (NullPointerException e) {
//      LOG.debug("Exception during readTableDecriptor. Current table name = " +
//        tableName , e);
//    } catch (IOException ioe) {
//      LOG.debug("Exception during readTableDecriptor. Current table name = " +
//        tableName , ioe);
//    }
    return htd;
  }
{code}

About the null, the method is not documented so we need to figure out what the right behavior is.  IMO, if the file if the .tableinfo is missing, this is probably an ioexception, or ideally a TableInfoMissingException extends HBaseIOException extends IOException.  Similarly you'd need to look where that method is called to make sure null is handled, and if any io exceptions are handled.
                
> 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