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

Francis Liu commented on HBASE-7772:
------------------------------------

Took a quick look this is what seems to be happening:

- SecureRPCengine initialization is created as part of 
HConnectionImplmentation's constructor
- SecureClient (subclass of HBaseClient), is created as part of SecureRPCEngine 
initialization
- HBaseClient.clusterId is assigned from conf (clusterId = 
conf.get(CLUSTER_ID,"default")  as part of HBaseClient's constructor
- SaslClient is the consumer of HBaseClient.clusterId to determine if a 
delegation token can be used
- HConnectionImplementation.ensureZookeeperTrackers() is responsible for 
setting the clusterId in conf

The problem here is the sequence in which things happen. Since SecureRPCEngine 
is created before HConnectionImplementation.ensureZookeeperTrackers() is 
called. HBaseClient.clusterId downstream will be set to "default".
                
> clusterId is not set in conf properly if only 
> TableMapReduceUtil.initCredentials() is called
> --------------------------------------------------------------------------------------------
>
>                 Key: HBASE-7772
>                 URL: https://issues.apache.org/jira/browse/HBASE-7772
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Francis Liu
>            Assignee: Francis Liu
>             Fix For: 0.96.0, 0.94.5
>
>         Attachments: HBASE-7772_94.patch, HBASE-7772.patch
>
>
> clusterId is not set in the job's conf correctly if only 
> TableMapReduceUtil.initCredentials() is called and thus fails to include the 
> token when using an hbase client in any of the job's tasks. This is a 
> regression.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to