kl0u opened a new pull request #11696: [FLINK-16658][FLINK-16660] Introduce the 
ApplicationDispatcherBootstrap and wire it to StandaloneJobEntrypoint
URL: https://github.com/apache/flink/pull/11696
 
 
   ## What is the purpose of the change
   
   This PR introduces the `ApplicationDispatcherBootstrap` which is responsible 
for bootstrapping the `Dispatcher` when running in application mode, as 
described in FLIP-85. In these settings, the user's `main()` runs on the 
`Dispatcher`. From now on, the entrypoint will launch a "session cluster" only 
for the jobs in the application that it starts with, and the cluster will be 
shutdown if:
   - all the jobs in the application fail
   - at least one of the jobs fails
   - if a job gets cancelled
   
   So far we allow only a single job application to be executed, for reasons 
described in the FLIP. 
   
   In addition, we wire the `ApplicationDispatcherBootstrap` to the 
`StandaloneJobClusterEntrypoint` so that we do not hijack the `execute()` 
method anymore. With this PR, the `StandaloneJobClusterEntrypoint` runs the 
user code in "Application Mode", i.e. the `main()` runs on the cluster and not 
on the client, but we do not rename the class, for backwards compatibility.
   
   ## Verifying this change
   
   We added:
   * the `ApplicationDispatcherBootstrapTest`,
   * the `JobStatusPollingUtilsTest`,
   * added tests in the `StandaloneJobClusterConfigurationParserFactoryTest` 
   * and there are already the end-to-end tests for the 
`StandaloneJobClusterEntrypoint` that cover the changes.
   
   ## Does this pull request potentially affect one of the following parts:
   
     - Dependencies (does it add or upgrade a dependency): (yes / **no**)
     - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: (**yes** / no)
     - The serializers: (yes / **no** / don't know)
     - The runtime per-record code paths (performance sensitive): (yes / **no** 
/ don't know)
     - Anything that affects deployment or recovery: JobManager (and its 
components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (**yes** / no / 
don't know)
     - The S3 file system connector: (yes / **no** / don't know)
   
   ## Documentation
   
     - Does this pull request introduce a new feature? (**yes** / no)
     - If yes, how is the feature documented? (not applicable / docs / JavaDocs 
/ **not documented yet**)
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to