Discussion threadhttps://lists.apache.org/thread/584tzpdhbj43lw2y9hwvlgytpmz4kyw7
Vote thread
JIRA

Release1.10


In the early days of Flink, the Program interface was the only way to submit a job.
The user code should implement this interface and return the Plan of the job to Flink.

This way of submitting jobs is now outdated but the code paths to support this type
of job submission are still there, complicating the code of other components, such as
the ClusterClient.

Given that this interface is not used anymore (as discussed in [1]), this FLIP proposes the removal of
the interface and the related code.


Proposed changes


This change includes the following changes:

  1. removal of the

if (Program.class.isAssignableFrom(this.mainClass)) {

   ...

 } 

branches in the PackagedProgram  class

2. the program  and plan  fields in the same class

3. all the code in the project that is executed when the PackagedProgram.isUsingProgramEntryPoint() is true

4. the related documentation

[1] https://lists.apache.org/x/thread.html/7ffc9936a384b891dbcf0a481d26c6d13b2125607c200577780d1e18@%3Cdev.flink.apache.org%3E