kubernetes: server-side apply takes ownership of fields that don't get set due to status wiping
The API server wipes status changes on calls to the normal endpoints (not /status) at the storage registry layer (right next to etcd). This means that calls to <resource>/<name>
can’t change status. However, if you send a server-side apply patch, the server-side apply logic still takes ownership of any fields you try to set, despite the fact that they don’t get set.
Reproduced on HEAD (8af1bf313efeeafb94c01ce04965ad8fe9cea21a).
Reproducer:
- Send a server-side apply patch setting any field in status to
/api/v1/namespaces/<ns>/pods/<name>
- Observe that ownership of that field has been taken
- Observe that the field isn’t set
cc #73723 cc @jennybuckley @apelisse
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Reactions: 1
- Comments: 39 (26 by maintainers)
Thanks for applying the label @erismaster, that’s indeed our target 😃
@kbruner you can update to 1.20 we didn’t make it in time 😕
We’re working on this and hoping to be done in 4 weeks. No guarantees though.
Thanks @smourapina . We won’t make it this release.
/milestone v1.19
The KEP is merged and I plan to get this ready before code freeze. Yes.