[
https://issues.apache.org/jira/browse/FLINK-40810?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated FLINK-40810:
-----------------------------------
Labels: pull-request-available (was: )
> FlinkSessionJob deletion leaves the job running when a transient Job Not
> Found error was never cleared
> ------------------------------------------------------------------------------------------------------
>
> Key: FLINK-40810
> URL: https://issues.apache.org/jira/browse/FLINK-40810
> Project: Flink
> Issue Type: Bug
> Components: Kubernetes Operator
> Reporter: Han You
> Priority: Major
> Labels: pull-request-available
>
> When a running session job is briefly missing from the JobManager's job
> overview (for example, one possible cause is
> https://issues.apache.org/jira/browse/FLINK-40602), {{JobStatusObserver}}
> sets {{status.error}} to {{"Job Not Found"}}. Once the job shows up again the
> job state goes back to {{RUNNING}}, but the error is never cleared. Later,
> when the {{FlinkSessionJob}} is deleted,
> {{SessionJobReconciler.cleanupInternal}} reads that stale error as proof that
> the job is already gone. It removes the finalizer without taking a savepoint
> or cancelling the job. The job keeps running on the session cluster, and
> - the operator no longer manages it.
> - When a controller recreates the {{FlinkSessionJob}} for the same pipeline,
> two jobs can end up running against the same sources and sinks. The same risk
> as FLINK-39891, reached through a different path.
> - The expected savepoint on deletion is never taken.
> - There is no visible sign. The CR reports {{RUNNING}} / {{STABLE}}, the only
> event on deletion is {{Cleanup}}, and nothing points at the stale error.
> We hit this in production. A single JobManager HA recovery left every session
> job on that cluster carrying the stale error.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)