-
Notifications
You must be signed in to change notification settings - Fork 451
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
Rearranging control plane migration task order to ensure that all objects are deleted #2636
Conversation
@kris94 Thank you for your contribution. |
/assign @plkokanov |
@kris94 Only code owners may change assignees. Commenters may only assign themselves. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/invite @plkokanov @vlvasilev @stoyanr @swilen-iwanow
Thanks, please squash the commits. |
f28ae8c
to
9b89a4f
Compare
I tested the change, it works, and I also have no comments to the code itself. The only concern that I have is that the description in the PR about the potential issue, "there is a chance that some objects are not deleted due to the task arrangement and the dependencies between them", is fairly vague. How could one reproduce an issue with the previous arrangement, so that we could test that the new arrangement actually fixes it? Have you actually tested this? |
The problem that this should fix is the following:
I just want to double check the deletion of the backupentry before the deletion of the apiserver and if flagging the managedresources with keepObjects: true is ok to be after the migration of the extensions. |
I wasn't able to reproduce the original issue, but imho the new ordering makes sense considering extension controllers could have special handling for managedresources that they deploy during the Migration operation. So it seems better to try to clean up all managedresources only after the extension controllers have been migrated and deleted. However, I tried to migrate a hibernated shoot cluster and the migration seems to hang on:
This could not be caused directly from this PR but could you check? |
/status author-action |
@kris94 The pull request was assigned to you under |
This is very strange I will try to reproduce it also. |
I can confirm that the issue described by Plamen is not caused by this PR. For couple of reasons we've added a wakeup step in the migration flow for the |
@swilen-iwanow thanks for your check. So is this PR ready to be merged? |
Just needs a rebase to include the changes for the DNSEntries and then it should be ok. |
9b89a4f
to
ac0a81c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
How to categorize this PR?
/area control-plane-migration
/kind enhancement
/priority normal
What this PR does / why we need it:
When the control plane migration is executed there is a chance that some objects are not deleted due to the task arrangement and the dependencies between them. With this PR the task order of the control plane migration are rearranged in a way that the deletion of the managed resources from the Shoot`s namespace task will wait for the deletion of the extension CRs from the Shoot namespace and the deletion of the BackupEntires from Seed.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
The commented code in shoot.go is preventing the "seedName" field in the shoot from being edited. Should this be deleted in not it it will be included in some other PR?
Release note: