[ 
https://issues.apache.org/jira/browse/YARN-1363?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Zhijie Shen updated YARN-1363:
------------------------------

    Attachment: YARN-1363.2.patch

I've drafted an initial patch which only contains the production code. Here're 
some important changes:

1. storing DT and removing DT are changed to be async in RMStateStore, and 
notify RMDelegationTokenSecretManager of operation completion.

2. updating DT is added to RMStateStore, such that RMStateStore can send 
separate update completion notification, not to confused with storing/removing 
completion notifications.

3. RMDelegationTokenSecretManager handles the completion nofitications from 
RMStateStore

4. RMStateStore maintains a map of outstanding DT operations.

5. ClientRMService are changed to whether the operation is still in progress or 
not, and poll the result only when the operation is finished.

6. Update the javadoc in ApplicationClientProtocol

7. Update the YarnClientImpl according. One finding in YarnClient is that 
canceling/renewing DT are not wrapped.

> Get / Cancel / Renew delegation token api should be non blocking
> ----------------------------------------------------------------
>
>                 Key: YARN-1363
>                 URL: https://issues.apache.org/jira/browse/YARN-1363
>             Project: Hadoop YARN
>          Issue Type: Bug
>            Reporter: Omkar Vinit Joshi
>            Assignee: Zhijie Shen
>         Attachments: YARN-1363.1.patch, YARN-1363.2.patch
>
>
> Today GetDelgationToken, CancelDelegationToken and RenewDelegationToken are 
> all blocking apis.
> * As a part of these calls we try to update RMStateStore and that may slow it 
> down.
> * Now as we have limited number of client request handlers we may fill up 
> client handlers quickly.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)

Reply via email to