[
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