luca-p-castelli opened a new pull request, #1228: URL: https://github.com/apache/flink-kubernetes-operator/pull/1228
## What is the purpose of the change Fix [FLINK-41074](https://issues.apache.org/jira/browse/FLINK-41074): a parent update during a blue/green transition can retire Blue using Green's previous revision's readiness or deletion-delay timestamp. ## Brief change log - Require Green's current desired generation to be observed, alongside RUNNING/STABLE status. - Re-read and validate the candidate before starting or applying the deletion delay. - Bind readiness to the candidate generation; reset it on candidate updates or observed readiness loss. Preserve pending parent intent and existing abort deadlines. - Add optional `status.deploymentReadyGeneration` and update the CRD/API reference. Legacy unbound timestamps conservatively start a fresh delay. ## Verifying this change - Added 29 regression cases covering revision changes, informer/API disagreement, restart/persistence, aborts, pending parent intent and legacy status. Both primary regressions fail without the fix and pass with it. - Selected upstream blue/green and supporting tests: 161 passed. Spotless, Checkstyle and RAT passed. - Manual Podman/Minikube testing with real Flink 1.20.3 jobs: both bugs independently reproduced without the fix; 14 acceptance scenarios passed with it, including late/repeated edits, operator restarts and candidate JobManager loss. Sleep/setup-affected attempts were excluded and rerun. - The live campaign preceded this upstream rebase; this rebased branch has not been replayed on Minikube. Full local reactor testing is blocked by native `etcd` startup; CI verification is pending. ## Does this pull request potentially affect one of the following parts: - Dependencies: no. - Public API / CustomResourceDescriptors: yes, one optional status field. Apply the updated CRD in place before upgrading the controller; application manifests need no changes. - Core observer or reconciler logic: yes, blue/green reconciliation. ## Documentation - New feature: no; bug fix. CRD/API reference updated. --- ##### Was generative AI tooling used to co-author this PR? - [X] Yes: OpenAI gpt-6.1-sol via Pi 1.2.0. Generated-by: OpenAI gpt-6.1-sol via Pi 1.2.0 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
