You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "stack (Jira)" <ji...@apache.org> on 2019/09/01 05:12:00 UTC

[jira] [Resolved] (HBASE-22957) [HBCK2] reference file check fails if compiled with old version but check against new

     [ https://issues.apache.org/jira/browse/HBASE-22957?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack resolved HBASE-22957.
---------------------------
    Fix Version/s: hbase-operator-tools-1.0.0
     Hadoop Flags: Reviewed
         Assignee: stack
       Resolution: Fixed

Thanks for review [~busbey]

> [HBCK2] reference file check fails if compiled with old version but check against new
> -------------------------------------------------------------------------------------
>
>                 Key: HBASE-22957
>                 URL: https://issues.apache.org/jira/browse/HBASE-22957
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: stack
>            Assignee: stack
>            Priority: Major
>             Fix For: hbase-operator-tools-1.0.0
>
>
> The innocuous looking change HBASE-22721 Refactor HBaseFsck: move the inner class out made it so some hbck2 filesystem checks fail if hbck2 was compiled with a version from before this change but run against a newer version. In name of making hbck2 able to run against broader swath of hbases, let me make some changes. Here is the exception you'd see:
> {code}
> 05:22:09.920 [main] INFO  org.apache.hadoop.hbase.client.ConnectionImplementation - Closing master protocol: MasterService
> Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.hbase.util.FSUtils.getTableStoreFilePathMap(Lorg/apache/hadoop/fs/FileSystem;Lorg/apache/hadoop/fs/Path;Lorg/apache/hadoop/fs/PathFilter;Ljava/util/concurrent/ExecutorService;Lorg/apache/hadoop/hbase/util/HBaseFsck$ErrorReporter;)Ljava/util/Map;
>         at org.apache.hbase.hbck1.HBaseFsck.offlineReferenceFileRepair(HBaseFsck.java:1191)
>         at org.apache.hbase.hbck1.HBaseFsck.offlineHbck(HBaseFsck.java:846)
>         at org.apache.hbase.FileSystemFsck.fsck(FileSystemFsck.java:103)
>         at org.apache.hbase.HBCK2.doCommandLine(HBCK2.java:560)
>         at org.apache.hbase.HBCK2.run(HBCK2.java:470)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
>         at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:90)
>         at org.apache.hbase.HBCK2.main(HBCK2.java:620)
> {code}
> While the 'fix' is for hbase-operator-tools, this area up in hbase needs commentary and deprecation. It was wonky from the get-go and we need to be explicit that this code is not to be enhanced and is going away. Will file a companion issue for hbase changes.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)