You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Dale Lane (Jira)" <ji...@apache.org> on 2026/08/12 09:08:00 UTC

[jira] [Created] (FLINK-40374) Redeploying a FlinkSessionJob from an explicit savepoint fails with IllegalArgumentException: Cannot parse JobID from "null" if the job was previously suspended

Dale Lane created FLINK-40374:
---------------------------------

             Summary: Redeploying a FlinkSessionJob from an explicit savepoint fails with IllegalArgumentException: Cannot parse JobID from "null" if the job was previously suspended
                 Key: FLINK-40374
                 URL: https://issues.apache.org/jira/browse/FLINK-40374
             Project: Flink
          Issue Type: Bug
          Components: Kubernetes Operator
            Reporter: Dale Lane


For a {{{}FlinkSessionJob{}}}, if a job is suspended with a savepoint, and the user then tries to explicitly redeploy it from a specific savepoint path (by setting {{{}spec.job.state=RUNNING{}}}, {{{}spec.job.initialSavepointPath{}}}, and bumping {{{}spec.job.savepointRedeployNonce{}}}), the reconciler fails instead of redeploying the job.

*Steps to reproduce:*
1. Deploy a {{FlinkSessionJob}} with {{spec.job.upgradeMode=SAVEPOINT}} and {{{}spec.job.state=RUNNING{}}}.

2. Suspend the job: set {{{}spec.job.state=SUSPENDED{}}}. The operator suspends the job with a savepoint, and clears the job id

3. Request a redeploy from an explicit savepoint: set {{{}spec.job.state=RUNNING{}}}, set {{spec.job.initialSavepointPath}} to a savepoint path, and bump {{spec.job.savepointRedeployNonce}} to a new value.

4. Reconciliation fails with:
{code:java}
org.apache.flink.kubernetes.operator.exception.ReconciliationException:
  java.lang.IllegalArgumentException: Cannot parse JobID from "null".
  The expected format is [0-9a-fA-F]{32}, e.g. fd72014d4c864993a2e5a9287b4a9c5d.
{code}
The same sequence (suspend, then trigger a savepoint redeploy via {{savepointRedeployNonce}} + {{{}initialSavepointPath{}}}) works as expected for {{FlinkDeployment}} in Application mode — it's already covered by an existing passing test ({{{}ApplicationReconcilerTest.testSavepointRedeploy{}}}).

The failure appears specific to {{{}FlinkSessionJob{}}}.

A test reproducing this issue is available here: [https://github.com/apache/flink-kubernetes-operator/commit/6a1b76fe9e778effe09946f31c9850f4bcb9dc03]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)