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

Gary Helmling commented on HBASE-12972:
---------------------------------------

I agree with the goal of introducing a stable Region interface that just 
exposes what we can support.  But I don't think we can introduce this by 
changing the existing method signatures in RegionObserver / 
RegionServerObserver in 1.0.x.  Won't that break every existing coprocessor 
that overrides those methods?  

Maybe we could at least deprecate the existing methods while adding the new 
versions.  BaseRegionObserver could implement the new methods by delegating to 
the old methods.  So existing coprocessors that implement the old methods and 
derive from BaseRegionObserver would still work.  New coprocessors overriding 
the new methods would also work.

> Region, a supportable public/evolving subset of HRegion
> -------------------------------------------------------
>
>                 Key: HBASE-12972
>                 URL: https://issues.apache.org/jira/browse/HBASE-12972
>             Project: HBase
>          Issue Type: New Feature
>            Reporter: Andrew Purtell
>            Assignee: Andrew Purtell
>             Fix For: 2.0.0, 1.0.1, 1.1.0, 0.98.11
>
>         Attachments: HBASE-12972-0.98.patch, HBASE-12972-0.98.patch, 
> HBASE-12972-0.98.patch, HBASE-12972-0.98.patch
>
>
> On HBASE-12566, [~lhofhansl] proposed:
> {quote}
> Maybe we can have a {{Region}} interface that is to {{HRegion}} is what 
> {{Store}} is to {{HStore}}. Store marked with {{@InterfaceAudience.Private}} 
> but used in some coprocessor hooks.
> {quote}
> By example, now coprocessors have to reach into HRegion in order to 
> participate in row and region locking protocols, this is one area where the 
> functionality is legitimate for coprocessors but not for users, so an 
> in-between interface make sense.
> In addition we should promote {{Store}}'s interface audience to 
> LimitedPrivate(COPROC).



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

Reply via email to