You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Geoffrey Jacoby (Jira)" <ji...@apache.org> on 2020/06/05 17:53:00 UTC

[jira] [Commented] (HBASE-24507) Remove HTableDescriptor and HColumnDescriptor

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

Geoffrey Jacoby commented on HBASE-24507:
-----------------------------------------

I understand that HTableDescriptor and HColumnDescriptor were deprecated in 2.0, which makes them eligible for removal in 3.0. I'm curious if the HBase community's deprecation policy _require_ the removal, or just allow it? 

Removing HTableDescriptor and HColumnDescriptor requires anyone who has existing HBase 0.9x or 1.x DDL code -- potentially a decade of it -- to rewrite it in order to upgrade to 3.0. It's not a simple find/replace, like some previous changes were, because HTableDescriptor uses constructors and TableDescriptor uses the Builder pattern. 

This is in addition to many other removals in 3.0, such as one which require application developers to change all Scans using setStartRow/setStopRow, which were also deprecated in 2.0 (HBASE-23481). For some long-time developers that could again be 8-10 years worth of queries across many different applications to change and test in order to upgrade. 

These removals may very well be the right way to go, and maybe I'm 3 years late bringing this up.  But it seems like a discussion of costs vs benefits to both the community and application developers would be useful, both when doing removals and doing deprecations. 

> Remove HTableDescriptor and HColumnDescriptor
> ---------------------------------------------
>
>                 Key: HBASE-24507
>                 URL: https://issues.apache.org/jira/browse/HBASE-24507
>             Project: HBase
>          Issue Type: Bug
>          Components: Client
>            Reporter: Duo Zhang
>            Assignee: Duo Zhang
>            Priority: Major
>             Fix For: 3.0.0-alpha-1
>
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)