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

Sean Busbey commented on PHOENIX-1501:
--------------------------------------

Another possibility is to fall back to using compatibility shims specific to 
particular HBase versions ala [the Lily HBase 
Indexer|https://github.com/NGDATA/hbase-indexer]. This is kind of icky, but 
provides maximum flexibility while minimizing the extent of any internal 
analogues we might create.

I'm hoping some modest additions to HBaseTestingUtility can obviate the private 
usage in PHOENIX-1502. If it doesn't, would starting a shim layer just for 
testing be acceptable?

> Remove or replace all uses of InterfaceAudience.Private HBase APIs and classes
> ------------------------------------------------------------------------------
>
>                 Key: PHOENIX-1501
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1501
>             Project: Phoenix
>          Issue Type: Task
>            Reporter: Andrew Purtell
>
> Umbrella issue for removing or replacing all uses of 
> InterfaceAudience.Private HBase APIs and classes.
> We won't be in a sustainable position if we don't establish a support 
> contract with HBase for use of its private internals - each major HBase 
> release will trigger potentially significant Phoenix refactoring.
> Let's approach it on a case by case basis. We can ask HBase to make private 
> APIs and classes supported by promoting their audience to 
> LimitedPrivate(PHOENIX). If that fails, we can negotiate a supportable 
> interface and contribute or assist in the necessary refactoring. If that 
> fails, we can redesign or implement internal analogues. If that fails, we can 
> go back to the HBase community with a stronger argument for the necessity of 
> a supportable interface and prevail.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to