[ https://issues.apache.org/jira/browse/HBASE-15978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15319314#comment-15319314 ]
Andrew Purtell commented on HBASE-15978: ---------------------------------------- {quote} bq. Related, we have some interfaces inheriting from Guava's Service, like the pluggable replication ones. This required a private patch to HBase code when I normalized our Guava version cross stack internally. Those are not InterfaceAudience.Public, but LimitedPrivate(Coprocessor) FWIW. {quote} That doesn't make it any less of a problem for long term maintenance of the code and implemeters of pluggable replication endpoints. LP is only less than public by a degree. We can't do this in either Public or LP APIs in my opinion. Internal HBase types in LP is acceptable for LP, but even then... > Netty API leaked into public API > -------------------------------- > > Key: HBASE-15978 > URL: https://issues.apache.org/jira/browse/HBASE-15978 > Project: HBase > Issue Type: Bug > Components: Client > Affects Versions: 2.0.0 > Reporter: Nick Dimiduk > Priority: Blocker > > Noticed out public > {{[client.Future|http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/client/Future.html]}} > interface extends Netty, which means our public API is bound to a specific > Netty API and release. IIRC we were minimizing our public-facing surface area > and asserting ownership over the whole of it so as to control our > compatibility. Ie, we've done this with Protobuf as well. Not sure if this > has made it back to other branches. -- This message was sent by Atlassian JIRA (v6.3.4#6332)