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

PoAn Yang commented on YUNIKORN-1929:
-------------------------------------

Hi [~mani], thanks for the feedback. I just created a PR. We can check whether 
this update makes code more complex.

For user trackers, the behavior works as before, but I use another way to clean 
them.
 # Collecting username mapping to queue paths.
 # Traversaling all queue trackers from the bottom up.
 ## If a child queue tracker doesn't have running applications and 
specific/wildcard limits configuration, it can be removed.
 ## If all child queue trackers can be removed and the parent queue tracker 
doesn't have running applications and specific/wildcard limits configuration, 
then the parent tracker can be removed.
 ## If a queue tracker has running applications, I check whether it has a limit 
configuration. If it doesn't have, I reset maxApplications and maxResources.

For group trackers, the way is similar. The only different part is that we 
remove group trakcer if it doesn't have any specific/wildcard limits 
configuration. We don't care whether there is any running application. However, 
we keep a group tracker if a wildcard limit configuration covers it.

> Keep group tracker if it's from a specific limit to wildcard limit
> ------------------------------------------------------------------
>
>                 Key: YUNIKORN-1929
>                 URL: https://issues.apache.org/jira/browse/YUNIKORN-1929
>             Project: Apache YuniKorn
>          Issue Type: Sub-task
>          Components: core - scheduler
>            Reporter: PoAn Yang
>            Assignee: PoAn Yang
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.4.0
>
>
> Currently, the user/group manager can't pass the following case:
> 1. Create a queue with the following limits:
>  
> {noformat}
> limits:
> - limit: "specific groups"
>   groups:
>   - group1
>   - group2
>   maxresources:
>     memory: 100
>     vcores: 100
>   maxapplications: 2
> - limit: "wildcard"
>   groups:
>   - *
>   maxresources:
>     memory: 50
>     vcores: 50
>   maxapplications: 1{noformat}
> 2. Increase resource usage (memory: 50, vcores: 50) for group1 and group2.
> 3. Remove "group2" from the "specific groups" limit and update the config. 
> The "group2" tracker will be removed. 
> 4. If we increase resource usage again, the system will pass. However, at 
> this moment, the real resource usage is 100 memory/vocres and it's more than 
> the wildcard limit.
>  



--
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