Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Enable tracking field management for some objects before they are applied to #87044
What this PR does / why we need it:
The inconsistency between the two behaviors would be minimal, since if an object without managedFields does get applied to, we already generate a single managedFields entry for all the existing fields, so the conflict set is the same as if we had been tracking managers from creation time. The only difference to a user would be that now these type of conflicts would sometimes contain more useful information about the manager(s) of the fields that caused the conflict.
The eventual goal is the get the probability to 100% by the time we release 1.18 (if we don't reach that goal we can always revert this PR), and doing it gradually can give us better feedback on the impact of the feature in production, without breaking the ci infrastructure too much in the event that Server Side Apply is not ready to be fully enabled.
Does this PR introduce a user-facing change?:
I really hope we don't ship an actual release with this at anything other than 100% or 0%... I would be extremely confused to encounter this as an end user sometimes. Was this requested by sig-scalability to gradually ramp up to 100% to avoid disrupting scale tests?
Yeah, the purpose of this is to turn it on slowly for low impact on devs / tests.
I actually don't think it's too weird to partially enable a feature--if this were a cloud service and not an OSS project we'd definitely be turning this on a little bit at a time. But I think we will get it to 100% shortly and we can turn it totally off easily if not.
[APPROVALNOTIFIER] This PR is APPROVED
The full list of commands accepted by this bot can be found here.
The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing
With apply running for 50% of objects, it looks like the performance impact is pretty small.
For example, on namespaced pods POST from pull-kubernetes-e2e-gce-100-performance:
14 similar comments