-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
panic in ml-pipeline-viewer-controller-deployment #2253
Comments
Same case here, we also encounter this bug. Could only delete all viewers then restart the pod as a workaround. |
Hi, just wanted to ask if there are any updates on this / fixes in progress. We run into this quite regularly due to high volume of tensorboard instances on a shared cluster, and we have to manually clean up old instances whenever this happens. |
/assign @jingzhang36 |
I believe the panic is caused by passing
(this line is present in the master branch as well) The godoc for the
DeleteOption is defined as Eventually and so the panic is caused when |
reconciler_test.go has a test that should cover the maybeDeleteOldestViewer logic, but the fake client that controller-runtime gives you via |
addresses issue kubeflow#2253. Passing `nil` as an argument to the varargs `...DeleteOption` parameter of `client.Delete()` will panic since client-go will iterate over the DeleteOption array and invoke each (since DeleteOption is defined as `type DeleteOptionFunc func(*DeleteOptions)`.
Raised the same issue here: #2757 |
I’ve submitted a fix in #2853 |
addresses issue #2253. Passing `nil` as an argument to the varargs `...DeleteOption` parameter of `client.Delete()` will panic since client-go will iterate over the DeleteOption array and invoke each (since DeleteOption is defined as `type DeleteOptionFunc func(*DeleteOptions)`.
It seems this is already fixed in #2853 Please reopen if it's not the case |
@Bobgy: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
addresses issue kubeflow#2253. Passing `nil` as an argument to the varargs `...DeleteOption` parameter of `client.Delete()` will panic since client-go will iterate over the DeleteOption array and invoke each (since DeleteOption is defined as `type DeleteOptionFunc func(*DeleteOptions)`.
What happened:
ml-pipeline-viewer-controller-deployment
/gcr.io/ml-pipeline/viewer-crd-controller:0.1.25
crashes due to a panicWhat did you expect to happen:
For the controller to not panic 😄
What steps did you take:
Create a sufficient number of
Viewer
instances so that viewer-crd-controller tries to clean up the oldest one when a new Viewer is created. Instead of being able to delete the oldest instance, the controller panics and crashes, in a loop - preventing new Tensorboard instances from being launched.Anything else you would like to add:
The problem can be remediated by deleting all
viewer
instances (kubectl -n kubeflow delete viewer --all
), but eventually as more instances are launched, the controller will panic again.Here is the full log output from a crash:
The text was updated successfully, but these errors were encountered: