acoustic-carpenter-78188
01/12/2023, 1:23 AMWait() call on the errgroup.WithContext doesn't return on first error. It waits til all the go-routines finish, and then returns the first error. I only cancels the context.
This means that all the goroutines have to monitor the context and terminate itself on context cancel. This is missing for the clusterresourcemanager -
flyte/cmd/single/start.go
Line 49 in </flyteorg/flyte/commit/f69fb09ca189e8bf57e1a6a12db168274f640d15|f69fb09>
.
This means that if Flyte Admin fails, the binary itself will proceed as normal, just without admin, since the cluster resource manager runs in perpetuity, which is how we found this issue.
Expected behavior
The whole process should fail if Admin fails. Add context monitoring logic to cluster resource controller and go through the other errgroups to make sure everything launched is also doing the right thing.
Additional context to reproduce
No response
Screenshots
No response
Are you sure this issue hasn't been raised already?
☑︎ Yes
Have you read the Code of Conduct?
☑︎ Yes
flyteorg/flyte