🐛 Fix machine loop block when backing node does not exist#1109
🐛 Fix machine loop block when backing node does not exist#1109viragvoros wants to merge 3 commits into
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Was this guard intended to be on We are aware of that particular case, and are working on a fix for it. If this PR is intended to solve the same bug, we would prefer to close this in favor of the other one. |
What/where is the "other one" PR? |
What this PR does / why we need it:
This PR fixes a bug in the machine preservation logic (
manageMachinePreservation). Currently, the controller returns an error if the backingNodeobject does not exist yet in the cluster.When a machine is newly created or replacing an old instance, it takes time for the node to register. Returning an error here completely stops the machine's main update loop. This prevents the machine from changing its status phase, which causes downstream components to miss other checks.
By ignoring the
NotFounderror, the controller can assume there are no node annotations yet and continue updating the machine normally.Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
I added a new test case to the unit test table. It checks that when a node is missing from the cluster, the controller ignores the error and returns a normal
LongRetryinstead of failing.Release note: