hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-19007) Align Services Interfaces in Master and RegionServer
Date Sat, 14 Oct 2017 07:40:00 GMT

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

Anoop Sam John commented on HBASE-19007:

I like the way NOT to expose RSS or MS directly. 
bq.MasterCoprocessorEnvironment and RegionServerCoprocessorEnvironment adding to these classes
any methods/facility
Means the CP required things in RS side like getConnection() will be added to RegionServerCoprocessorEnvironment
?  We would need it in RegionCoprocessorEnvironment also because that is what goes to RegionObserver
hooks.   So u say that will also be true?
bq.getOnlineTables is weird. For Quota only. Lets fix Quota and not expose it here.
Ya may be not needed.
But CPRSS now extend ImmutableOnlineRegions  also and functions there will be needed by RS
side hooks (Region level or RS level hooks)
We can 1st list down what all needed at MS level, RS level, Region level and WAL level.
bq.public interface Server extends Abortable, Stoppable {
I have a concern.  This means we expose the APIs from Abortable and Stoppable which include
calls to abort() and stop. I believe no CP should directly do this.  Why a CP should abort
HM or RSS?   That would be dangerous IMO.  I  checked Phoenix code, they seem to call this
in 2 or 3 places !!   What a CP instead should do is throw some IOE from CP hook and make
the config 'hbase.coprocessor.abortonerror' as true. (This is any way by def true only). 
 Same with Stoppable also.
On general expose the Server and that having common methods for a server (Same in HM and RS
side) and the **CorprocessorEnvironment exposing other things looks to be good solution.

> Align Services Interfaces in Master and RegionServer
> ----------------------------------------------------
>                 Key: HBASE-19007
>                 URL: https://issues.apache.org/jira/browse/HBASE-19007
>             Project: HBase
>          Issue Type: Task
>            Reporter: stack
>            Priority: Blocker
> HBASE-18183 adds a CoprocessorRegionServerService to give a view on RegionServiceServices
that is safe to expose to Coprocessors.
> On the Master-side, MasterServices becomes an Interface for exposing to Coprocessors.
> We need to align the two.
> For background, see https://issues.apache.org/jira/browse/HBASE-12260?focusedCommentId=16203820&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16203820

This message was sent by Atlassian JIRA

View raw message