[
https://issues.apache.org/jira/browse/YUNIKORN-2223?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17792033#comment-17792033
]
Craig Condit commented on YUNIKORN-2223:
----------------------------------------
Actually, there’s a very good reason not to do this. By eliminating the
separate lock variable, you make the Lock() and Unlock() methods public. We
really don’t want to do this, as that could lead to unforeseen deadlocks
locking is now available external to the object. I’m not in favor of this
change.
> Eliminate separate mutex variables
> ----------------------------------
>
> Key: YUNIKORN-2223
> URL: https://issues.apache.org/jira/browse/YUNIKORN-2223
> Project: Apache YuniKorn
> Issue Type: Improvement
> Components: shim - kubernetes
> Reporter: Peter Bacsko
> Priority: Minor
>
> In {{{}cache.Task{}}}, the lock variable is defined as:
> {noformat}
> type Task struct {
> ...
> schedulingState TaskSchedulingState
> sm *fsm.FSM
> lock *sync.RWMutex
> } {noformat}
> This also applies to {{cache.Application}} and {{cache.Context}}.
> In other parts of the code, we simply embed {{sync.RWMutex}}. There's no need
> to have a separate variable. Locking and unlocking become simpler.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]