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

KAI-JAY TU reassigned YUNIKORN-3418:
------------------------------------

    Assignee: KAI-JAY TU

> User/group resolution runs under the PartitionContext read lock
> ---------------------------------------------------------------
>
>                 Key: YUNIKORN-3418
>                 URL: https://issues.apache.org/jira/browse/YUNIKORN-3418
>             Project: Apache YuniKorn
>          Issue Type: Sub-task
>          Components: core - scheduler
>            Reporter: Dale Richardson
>            Assignee: KAI-JAY TU
>            Priority: Minor
>
> {{PartitionContext.convertUGI}} takes {{pc.RLock()}} and then calls 
> {{userGroupCache.ConvertUGI}}, which for an uncached user resolves through 
> the configured OS or LDAP resolver. The cache releases its own lock around 
> the lookup, but the partition lock stays held, so a slow or unreachable 
> directory blocks every partition writer ({{AddApplication}}, node add and 
> remove, allocation processing, config update) for as long as the lookup 
> takes. Negative results are cached for only 30 seconds, so a broken directory 
> recurs per user.
> With the default no-op resolver of the Kubernetes deployment the section is 
> bounded and this does not apply; it matters for OS and LDAP resolvers. Not 
> reproduced.
> Fix: {{userGroupCache}} is set at construction, so read it and call 
> {{ConvertUGI}} after releasing the lock.
> Marker: {{convertUGI}} in {{partition.go}} carries {{+lockblockingignore}} 
> for this JIRA; the fix removes it.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to