lvmcluster: Clean up stale node finalizers and annotations #1937
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
LVMVolumeGroup objects accumulate annotations with the prefix
wiped.devices.lvms.openshift.io/ (one per node) that are never cleaned up
when nodes are deleted, causing annotations to exceed Kubernetes' 256KB
limit and resulting in vg-manager reconciliation errors.
Add cleanupNodeAnnotations() to remove stale node annotations and move
existing finalizer cleanup from poll-based LVMCluster reconciliation to the
dedicated node removal controller. This provides event-driven cleanup at the
precise moment of LVMVolumeGroupNodeStatus deletion, eliminating race
conditions and improving efficiency by targeting the specific deleted node
rather than scanning all VolumeGroups on every reconciliation.