Skip to content
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

Remove finalizer based deletion ordering functionality #259

Open
Tracked by #213
turkenh opened this issue May 24, 2024 · 1 comment
Open
Tracked by #213

Remove finalizer based deletion ordering functionality #259

turkenh opened this issue May 24, 2024 · 1 comment
Labels
enhancement New feature or request

Comments

@turkenh
Copy link
Collaborator

turkenh commented May 24, 2024

What problem are you facing?

Provider Kubernetes introduced a finalizer based deletion ordering solution before Crossplane introduces Usages. The functionality works fine most of the time, however, may cause ending up with stuck resources with finalizers not removed especially under heavy conditions where multiple Objects deleted in parallel or provider gets restarted (just theory, haven't dug deeper).

We should deprecate this stop-gap solution in favor of Crossplane Usages to avoid the maintenance burden and confusion with multiple solutions to the same problem.

How could Crossplane help solve your problem?

Deprecate & remove finalizer based deletion ordering functionality. //cc @morningspace

@turkenh turkenh added the enhancement New feature or request label May 24, 2024
@rperez95
Copy link

rperez95 commented Dec 4, 2024

Hi @turkenh,

I understand the reasoning behind deprecating the finalizer-based deletion ordering functionality, but we're concerned about how it might affect certain use cases.

For instance, we rely on this feature to prevent deletion of pre-created k8s secrets used by some of our compositions. As far as we know, the use of Usages is restricted to Crossplane resources, which does not include k8s secrets.

We use Usages to deletion ordering, but we also use the finalizer-based functionality to ensure that k8s secrets are not deleted before the managed resources deployed by our compositions are fully deleted.

Could you clarify whether an alternative mechanism would be introduced to handle such scenarios, or provide guidance on how to address this gap if the finalizer-based approach is removed?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants