You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@yunikorn.apache.org by "Arthur Wang (Jira)" <ji...@apache.org> on 2024/04/21 05:40:00 UTC

[jira] [Assigned] (YUNIKORN-2551) Move `buildRules` out of `AppPlacementManager` to be a function

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

Arthur Wang reassigned YUNIKORN-2551:
-------------------------------------

    Assignee: Arthur Wang  (was: Chia-Ping Tsai)

> Move `buildRules` out of `AppPlacementManager` to be a function
> ---------------------------------------------------------------
>
>                 Key: YUNIKORN-2551
>                 URL: https://issues.apache.org/jira/browse/YUNIKORN-2551
>             Project: Apache YuniKorn
>          Issue Type: Improvement
>            Reporter: Chia-Ping Tsai
>            Assignee: Arthur Wang
>            Priority: Major
>
> https://github.com/apache/yunikorn-core/blob/master/pkg/scheduler/placement/placement.go#L70
> {code:java}
> func (m *AppPlacementManager) initialise(rules []configs.PlacementRule) error {
> 	log.Log(log.Config).Info("Building new rule list for placement manager")
> 	// build temp list from new config
>         // here!!!
> 	tempRules, err := m.buildRules(rules)
> 	if err != nil {
> 		return err
> 	}
> 	m.Lock()
> 	defer m.Unlock()
> {code}
> We call `m.buildRules` without holding AppPlacementManager lock since `buildRules` does not touch any fields of `AppPlacementManager`. It seems to me we should make `buildRules` be a function rather than method of `AppPlacementManager`. 



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

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@yunikorn.apache.org
For additional commands, e-mail: issues-help@yunikorn.apache.org