[
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: [email protected]
For additional commands, e-mail: [email protected]