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

Manikandan R commented on YARN-9831:
------------------------------------

In latest patch, I think {{!nodeSet.contains(container.getNodeId())}} block and 
its {{nodeSet.add(container.getNodeId());}} should be in critical section. 
Otherwise, it may lead to inconsistent data while adding (WRITE operation) new 
tokens into set as read op is followed by write op and lock is not write 
anymore.

In general, I think we can explore if computeIfPresent / computeIfAbsent / 
Compute methods of concurrent hash map can be used to perform operations like 
add, remove etc atomically in this context to avoid write locks.

> NMTokenSecretManagerInRM#createNMToken blocks ApplicationMasterService 
> allocate flow
> ------------------------------------------------------------------------------------
>
>                 Key: YARN-9831
>                 URL: https://issues.apache.org/jira/browse/YARN-9831
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>            Reporter: Bibin Chundatt
>            Assignee: Bilwa S T
>            Priority: Critical
>         Attachments: YARN-9831.001.patch, YARN-9831.002.patch
>
>
> Currently attempt's NMToken cannot be generated independently. 
> Each attempts allocate flow blocks each other. We should improve the same



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org

Reply via email to