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
