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
Bug 1858763: static-pod-installer: remove deadlock by recreating installers that disappear #871
Bug 1858763: static-pod-installer: remove deadlock by recreating installers that disappear #871
Conversation
The line ``` ret.TargetRevision = currNodeState.CurrentRevision ``` led to a dead-lock because the installer controller only does anything if either - all `TargetRevision`s are zero - or the `TargetRevision` value is larger than `CurrentRevision`. We went into the second case and the controller dead-locked.
|
@sttts: This pull request references Bugzilla bug 1858763, which is invalid:
Comment 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. |
|
@sttts: This pull request references Bugzilla bug 1858763, which is invalid:
Comment 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. |
|
/bugzilla refresh |
|
@sttts: This pull request references Bugzilla bug 1858763, which is valid. The bug has been moved to the POST state. The bug has been updated to refer to the pull request using the external bug tracker. 3 validation(s) were run on this bug
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. |
|
/lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: mfojtik, sttts The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/hold until proof bump openshift/cluster-kube-apiserver-operator#939 shows some green. |
|
@sttts: All pull requests linked via external trackers have merged: Bugzilla bug 1858763 has been moved to the MODIFIED state. 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. |
|
/cherry-pick release-4.5 |
|
/cherry-pick release-4.4 |
|
@sttts: new pull request created: #879 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. |
|
@sttts: #871 failed to apply on top of branch "release-4.4": 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. |
The line
led to a dead-lock because the installer controller only does anything if either
TargetRevisions are zeroTargetRevisionvalue is larger thanCurrentRevision.We went into the second case and the controller dead-locked.
Note: just before this code there is the
ensureInstallerPodinvocation. We run into the bug when the pod apply call fails (e.g. of some network issue).Note: when the installer pod disappears again and again (for whatever reason), this could hotloop (of course we do the usual backoff in the controller though). But this is the same
for the existing OOM case.