[
https://issues.apache.org/jira/browse/FLINK-39509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gyula Fora closed FLINK-39509.
------------------------------
Assignee: Dennis-Mircea Ciupitu
Resolution: Fixed
merged to main 24b0d998278b8ce8a579927ea292b9f4eb1b5a60
> Mutating webhook produce spurious object modifications on no-op patches
> -----------------------------------------------------------------------
>
> Key: FLINK-39509
> URL: https://issues.apache.org/jira/browse/FLINK-39509
> Project: Flink
> Issue Type: Bug
> Components: Kubernetes Operator
> Affects Versions: kubernetes-operator-1.14.0
> Reporter: Dennis-Mircea Ciupitu
> Assignee: Dennis-Mircea Ciupitu
> Priority: Major
> Labels: pull-request-available
> Fix For: kubernetes-operator-1.15.0
>
>
> The mutating webhook's {{FlinkMutator}} always performs a Jackson
> {{convertValue}} serialization round-trip (HasMetadata -> typed class ->
> back) on every CREATE/UPDATE admission request. When no
> {{FlinkResourceMutator}} actually modifies the resource, the round-tripped
> object can serialize differently from the original input (e.g., field
> ordering, null handling), causing the webhook to return a JSON patch to the
> API server even though nothing was logically changed.
> This leads to inconsistent behavior where {{kubectl patch}} reports
> {{patched}} instead of {{patched (no change)}} for resources like
> {{FlinkDeployment}}, even when the patch contains no effective change (e.g.,
> setting {{restartNonce}} to its current value). While this does not trigger
> an actual reconciliation (the operator correctly detects no spec diff), it is
> confusing and causes unnecessary {{resourceVersion}} bumps on the Kubernetes
> object.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)