[
https://issues.apache.org/jira/browse/HBASE-20635?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16510440#comment-16510440
]
stack commented on HBASE-20635:
-------------------------------
bq. ...but we cannot do the same when we use shaded protobufs
Right. Shaded protobufs are for hbase use internally. I'd be interested in why
Phoenix is making use of them?
We did a mountain of work to make it so the old hbase-protocol content would
still work in hbase2.
In the class comment on the class changed by this patch it says:
" * In HBASE-15638, we create a hbase-protocol-shaded module for upgrading
protobuf version to 3.x,
* but there are still some coprocessor endpoints(such as AccessControl,
Authentication,
* MulitRowMutation) which depend on hbase-protocol module for CPEP
compatibility. In fact, we use
* PB objects in AccessControl.proto under hbase-protocol for access control
logic and use shaded
* AccessControl.proto only for serializing/deserializing permissions of
.snapshotinfo."
Reopening till we figure this out.
> Support to convert the shaded user permission proto to client user permission
> object
> ------------------------------------------------------------------------------------
>
> Key: HBASE-20635
> URL: https://issues.apache.org/jira/browse/HBASE-20635
> Project: HBase
> Issue Type: Bug
> Reporter: Rajeshbabu Chintaguntla
> Assignee: Rajeshbabu Chintaguntla
> Priority: Major
> Fix For: 3.0.0, 2.1.0
>
> Attachments: HBASE-20635.patch, HBASE-20635_v2.patch,
> PHOENIX-4528_5.x-HBase-2.0_v2.patch
>
>
> Currently we have API to build the protobuf UserPermission to client user
> permission in AccessControlUtil but we cannot do the same when we use shaded
> protobufs.
> {noformat}
> /**
> * Converts a user permission proto to a client user permission object.
> *
> * @param proto the protobuf UserPermission
> * @return the converted UserPermission
> */
> public static UserPermission
> toUserPermission(AccessControlProtos.UserPermission proto) {
> return new UserPermission(proto.getUser().toByteArray(),
> toTablePermission(proto.getPermission()));
> }
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)