TisonKun opened a new pull request #10392: [FLINK-14854][client] Add 
executeAsync() method to execution environments
URL: https://github.com/apache/flink/pull/10392
   ## What is the purpose of the change
   Add a new `executeAsync()` method which returns a future of `JobClient`. 
This exposes the new executor/job client work on the user API.
   I added such methods in `ExecutionEnvironment` & 
`StreamExecutionEnvironment` and export as Scala API.
   However, I don't patch code for make it works in every environment that 
hijacks `execution` method. The reason is that 1) future work will port 
(Local|Remote)Environment under new Executor abstraction so then they will 
work. 2) CollectionEnvironment doesn't support something like `JobClient`. 
Actually I think such environment can be replaced with LocalEnvironment.
   Currently, I do only check not null for `ExecutorFactory` in `executeAsync` 
and throw an exception with description when we cannot find one, i.e., Local, 
Remote, Collection Environment. It will hints users that these envs don't 
support such feature(now).
   ## Verifying this change
   `executeAsync()` is a lightweight interface for default parameter. And with 
this change all codepath previously goes into `execute(jobName)` now also goes 
into `executeAsync(jobName)`. Thus I think the change is already covered by 
existing tests.
   ## Does this pull request potentially affect one of the following parts:
     - Dependencies (does it add or upgrade a dependency): (no)
     - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: (yes, we introduces more user APIs)
     - The serializers: (no)
     - The runtime per-record code paths (performance sensitive): (no)
     - Anything that affects deployment or recovery: JobManager (and its 
components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
     - The S3 file system connector: (no)
   ## Documentation
     - Does this pull request introduce a new feature? (yes)
     - If yes, how is the feature documented? (JavaDocs)
   cc @aljoscha @kl0u 

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:

With regards,
Apache Git Services

Reply via email to