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

ramkrishna.s.vasudevan commented on HBASE-19007:
------------------------------------------------

[[email protected]]
Spent some time to see the code around it. 
Yes some CPs like AccessController, VisibilityController, TokenProvider and 
ReplicationObserver needs this RegionSErverServices.

AccessController can act as both RSCP and RegionCP. 
Visibilitycontroller is only RegionCP and so the service that the 
VisibilityController wants to use needs ZK.
ReplicaObserver needs the Replication service from RegionServerServices.

The problem here is that we think CP is user exposed so have minimal things 
exposed but those CPs which are part of Hbase code try to make use of the 
internals and internal services. Probably one way is that introduce a marker 
interface called InternalCP and have the internal verion of these RegionCPEnv 
call it InternalRegionCPEnv.
So any CP part of internal hbase code will use this marker interface and while 
loading that CP we can always crate the InternalRegionCPEnv instead of 
RegionCPEnv. Just an initial thought. 

How ever am not sure about master CPs because if there are some master CPs then 
they may need AM access also. But is it good to expose AM? I think
that is your other JIRA where you try to seperate the MasterServices from those 
needed for CPs.

> 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
>         Attachments: HBASE-19007.master.001.patch
>
>
> 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
(v6.4.14#64029)

Reply via email to