You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Santhosh G Nayak (JIRA)" <ji...@apache.org> on 2017/04/28 06:19:04 UTC
[jira] [Updated] (HADOOP-14361) Azure:
NativeAzureFileSystem.getDelegationToken() call fails sometimes when
invoked concurrently
[ https://issues.apache.org/jira/browse/HADOOP-14361?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Santhosh G Nayak updated HADOOP-14361:
--------------------------------------
Attachment: HADOOP-14361.1.patch
Currently, {{NativeAzureFileSystem.getDelegationToken()}} method uses {{DelegationTokenAuthenticatedURL.getDelegationToken()}} to get the delegation token from the remote delegation token service protected by Kerberos over HTTP and it is not thread safe.
Attached a patch containing the fix where {{NatieAzureFileSystem.getDelegationToken()}} method is marked as {{synchronized}}.
> Azure: NativeAzureFileSystem.getDelegationToken() call fails sometimes when invoked concurrently
> ------------------------------------------------------------------------------------------------
>
> Key: HADOOP-14361
> URL: https://issues.apache.org/jira/browse/HADOOP-14361
> Project: Hadoop Common
> Issue Type: Bug
> Components: fs/azure
> Affects Versions: 2.9.0
> Reporter: Santhosh G Nayak
> Assignee: Santhosh G Nayak
> Attachments: HADOOP-14361.1.patch
>
>
> Sometimes {{NativeAzureFileSystem.getDelegationToken()}} method fails with below exception when invoked concurrently,
> {code}Caused by: org.apache.hadoop.security.authentication.client.AuthenticationException: Authentication failed, URL: http://delegationtokenmanger/?op=GETDELEGATIONTOKEN&renewer=rm%2Fhostname%40realm, status: 401, message: Authentication required
> at org.apache.hadoop.security.authentication.client.AuthenticatedURL.extractToken(AuthenticatedURL.java:278)
> at org.apache.hadoop.security.authentication.client.KerberosAuthenticator.authenticate(KerberosAuthenticator.java:195)
> at org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticator.authenticate(DelegationTokenAuthenticator.java:132)
> at org.apache.hadoop.security.authentication.client.AuthenticatedURL.openConnection(AuthenticatedURL.java:216)
> at org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticator.doDelegationTokenOperation(DelegationTokenAuthenticator.java:298)
> at org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticator.getDelegationToken(DelegationTokenAuthenticator.java:170)
> at org.apache.hadoop.security.token.delegation.web.DelegationTokenAuthenticatedURL.getDelegationToken(DelegationTokenAuthenticatedURL.java:371)
> at org.apache.hadoop.fs.azure.NativeAzureFileSystem$2.run(NativeAzureFileSystem.java:2993)
> at org.apache.hadoop.fs.azure.NativeAzureFileSystem$2.run(NativeAzureFileSystem.java:2990)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:422)
> at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1866)
> ... 29 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org