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

Stig Rohde Døssing edited comment on HBASE-22027 at 3/11/19 9:42 PM:
---------------------------------------------------------------------

I only need obtainAndCacheToken. The other 4 methods expose protobufs or the 
private AuthenticationTokenIdentifier/Token. I can't make any of the methods 
private, as they need to be accessible to both 
ClientTokenUtil.obtainAndCacheToken and the forwarding methods in TokenUtil. 
How about I make the methods package private in hbase-client, leave the 
forwarding from TokenUtil to ClientTokenUtil in place, and deprecate the 
corresponding public methods in TokenUtil in hbase-server?

Edit: I figure the methods are still useful internally. Maybe move the 4 
methods to another new class in hbase-client marked InterfaceAudience.Private, 
and leave ClientTokenUtil as public with only the obtainAndCacheToken method 
defined?


was (Author: srdo):
I only need obtainAndCacheToken. The other 4 methods expose protobufs or the 
private AuthenticationTokenIdentifier/Token. I can't make any of the methods 
private, as they need to be accessible to both 
ClientTokenUtil.obtainAndCacheToken and the forwarding methods in TokenUtil. 
How about I make the methods package private in hbase-client, leave the 
forwarding from TokenUtil to ClientTokenUtil in place, and deprecate the 
corresponding public methods in TokenUtil in hbase-server?

> Move non-MR parts of TokenUtil into hbase-client
> ------------------------------------------------
>
>                 Key: HBASE-22027
>                 URL: https://issues.apache.org/jira/browse/HBASE-22027
>             Project: HBase
>          Issue Type: Improvement
>    Affects Versions: 2.1.3
>            Reporter: Stig Rohde Døssing
>            Priority: Major
>         Attachments: 
> 0001-HBase-22027-Split-non-MR-related-parts-of-TokenUtil-.patch, 
> 0001-HBase-22027-Split-non-MR-related-parts-of-TokenUtil-.patch
>
>
> HBASE-14208 moved TokenUtil from hbase-client to hbase-server.
> I have a project depending on hbase-client 1.4.4, which I'd like to upgrade 
> to 2.1.3. My project uses TokenUtil (specifically obtainAndCacheToken), which 
> is included in hbase-client 1.4.4. At the same time I also have a dependency 
> on Jetty 9.4, which is incompatible with the current version used by Hadoop. 
> I can fix this for hbase-client by using hbase-shaded-client instead, since 
> Jetty is shaded in this jar, but TokenUtil is only present in hbase-server as 
> of 2.0.0. Since there is no hbase-shaded-server, I can't use TokenUtil and 
> Jetty 9.4 at the same time.
> TokenUtil can be split into server-only parts, and a client relevant part 
> that can go back to hbase-client. The TokenUtil in hbase-server can retain 
> the moved methods, and delegate to the util in hbase-client if backward 
> compatibility is a concern.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to