[
https://issues.apache.org/jira/browse/YUNIKORN-2233?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Peter Bacsko updated YUNIKORN-2233:
-----------------------------------
Summary: Scheduler core cannot be stopped properly (was: Lot of core
objects instances cannot be stopped)
> Scheduler core cannot be stopped properly
> -----------------------------------------
>
> Key: YUNIKORN-2233
> URL: https://issues.apache.org/jira/browse/YUNIKORN-2233
> Project: Apache YuniKorn
> Issue Type: Improvement
> Components: core - scheduler
> Reporter: Peter Bacsko
> Assignee: Peter Bacsko
> Priority: Major
> Attachments: goroutines_core.png
>
>
> Once we have a {{Scheduler}}, {{RMProxy}}, {{HealthChecker}},
> {{internalMetricsCollector}}, etc. objects initialized, there's no way to
> stop the background goroutines started by them. This isn't necessarily a
> problem in a real environment, because restarting the scheduler core on its
> own is not a requirement.
> However, in the tests which use {{MockScheduler}}, we don't want goroutines
> to keep running and consume memory. Therefore, we a need a proper {{Stop()}}
> method on the most relevant types to make sure that the stop signal
> propagates to all goroutines.
> Attached screenshot shows what happens after we call {{MockScheduler.Stop()}}
> in the core (it's very similar to the {{MockScheduler}} in the shim).
> Goroutines are still running from the following types:
> * {{Scheduler}}
> * {{nodesResourceUsageMonitor}}
> * {{HealthChecker}}
> * {{RMProxy}}
> * {{EventSystemImpl}}
> * {{partitionManager}}
> * {{internalMetricsCollector}}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]