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

Enis Soztutar commented on HBASE-12932:
---------------------------------------

>From what I gather from the hadoop's javadocs, Stable means that we can still 
>add methods to an interface between minor versions. This means that having 
>Connection/Table as stable makes sense to me. 

For 0.98, we can do Evolving I guess. 

> [0.98] Change the interface annotation of HConnection from Public/Stable to 
> Public/Evolving
> -------------------------------------------------------------------------------------------
>
>                 Key: HBASE-12932
>                 URL: https://issues.apache.org/jira/browse/HBASE-12932
>             Project: HBase
>          Issue Type: Task
>            Reporter: Andrew Purtell
>            Assignee: Andrew Purtell
>             Fix For: 0.98.10
>
>         Attachments: HBASE-12932-0.98.patch
>
>
> See the tail of HBASE-12859. Lars wants to add methods to HConnection. I 
> suggest not because HConnection has Public/Stable annotation. Enis then says:
> {quote}
> We do not differentiate or explicitly document this, but my understanding of 
> most of our InterfaceAudience.Public is for consumption, not for extending or 
> implementing interfaces (except for some coprocessor cases). So I think we 
> should be free to add new methods in Admin, Connection, etc in minor 
> versions. I would say that in patch versions we should not do such changes.
> Maybe we can do a base classes as a convenience, but still with no guarantees.
> {quote}
> to which I reply:
> {quote}
> Shrug. So the Public/Stable annotation just means "keep this interface 
> around, don't worry about changes that will break an implementor?" . Then 
> what would Public/Evolving (or Unstable) mean as difference? Do we have what 
> the annotations mean documented somewhere? This point didn't come up in a 
> review when I backported client pushback, so now we have 
> StatisticsHConnection. If it's ok to add methods to HConnection I would like 
> to sink the 0.98.10 RC that has this change and fix it with a new patch/issue.
> {quote}
> I'm not sure what others think, but if we change the annotation of 
> HConnection to Public/Evolving then it would make sense to allow methods to 
> be added. 
> I will open a subtask of this issue to nuke StatisticsHConnection if/once the 
> annotation is changed. I would also sink the current 0.98.10 RC that has 
> StatisticsHConnection in it so it never sees the light of day.



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

Reply via email to