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)

Reply via email to