[ 
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)

Reply via email to