docs(controller-manager): assess disabling embedded GC at core scope#639
Open
ecv wants to merge 3 commits into
Open
docs(controller-manager): assess disabling embedded GC at core scope#639ecv wants to merge 3 commits into
ecv wants to merge 3 commits into
Conversation
Follow-up to #631. Assessment of the memory/goroutine cost of the embedded Kubernetes garbage collector at --control-plane-scope=core, the cascade-deletion risk of disabling it, and a measurement/validation plan. Doc only; no behavioral change. Refs #631 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
Author
|
Seeing if this is safe. |
Verify the Section 4 cascade-deletion paths against current code and resolve the two open questions: - Organization -> namespace removal is GC-driven: the org controller has no finalizer and no explicit namespace delete, so disabling GC leaks the namespace and (via the stalled content deleter) all its contents. Moved from 4a "covered" to 4b as the highest-severity path. - OrganizationMembership -> owned PolicyBindings relies on GC: no deletion finalizer, only steady-state pruning of undesired bindings. - User -> PolicyBinding/UserPreference confirmed (three owned objects). - Downstream anchors: no core controller uses the anchor strategy, so likely out of core scope; flagged to confirm. Conclusion unchanged: disabling at core scope is not safe today. Add Section 7 listing the required explicit-cleanup conversions (Changes 1-3) and the two verifications (4-5) that must land first. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Assessment (RFC) of whether the embedded Kubernetes garbage collector (GC) controller should be disabled when the controller-manager runs at
--control-plane-scope=core, to cut goroutine/memory usage.Doc only — no behavioral change. Follow-up to #631; complements #632 (which stripped managedFields from per-project quota caches).
Document
docs/proposals/core-scope-embedded-gc-assessment.mdIt covers:
file:linereferences).--controllers=*,-garbagecollector.Note
This is an assessment with open questions and a measurement plan, not a proposal to disable. It explicitly does not claim disabling is safe today.
Refs #631, #632
🤖 Generated with Claude Code