Josh Keegan created FLINK-40467:
-----------------------------------

             Summary: Flink 2.3 Application Mode managed by the kubernetes 
operator can start without submitting the new job after savepoint redeploy
                 Key: FLINK-40467
                 URL: https://issues.apache.org/jira/browse/FLINK-40467
             Project: Flink
          Issue Type: Bug
          Components: Kubernetes Operator
    Affects Versions: 2.3.0
            Reporter: Josh Keegan


With Flink 2.3 Application Mode, we have seen savepoint upgrades complete 
successfully but the replacement application cluster sometimes starts without 
submitting the new job.

The operator assigns a new Job ID, while the Application ID remains the same as 
the previous deployment. The JobManagers are healthy and REST is available, but 
the operator reports {{{}MISSING / Job Not Found{}}}. Looking in the UI, the 
previous application shows as {{FINISHED}} with no jobs.

Looking into this, it seems that the operator replaces the Job ID during a 
savepoint redeployment since the old Job has been stopped. The same logic 
doesn't exist for the new Application ID.

We worked around this by setting the Application ID to the Job ID assigned by 
the operator in a startup script for our docker image. That way, whenever the 
operator rotates the Job ID, our Application ID is also rotated. Since doing 
this approx 1 week ago, we've had no issues.

It looks like the operator should manage the Application ID alongside the Job 
ID for new Application Mode executions. I think our fix of setting it to be the 
same as the Job ID is fine for single Job deployments, but I don't know if more 
complex logic is required for multiple Jobs.


Using Flink 2.3 and flink-kubernetes-operator 1.15.0



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

Reply via email to