ASF GitHub Bot commented on FLINK-9280:

Github user tillrohrmann commented on a diff in the pull request:

    --- Diff: 
    @@ -40,6 +41,14 @@
     public class DistributedCache {
    +   /**
    +    * An entry for a single file or directory that should be cached.
    +    *
    +    * <p>Entries have different semantics for local directories depending 
on where we are in the job-submission process.
    +    * After registration through the API {@code filePath} denotes the 
original directory.
    +    * Before the job is submitted to the cluster directories are zipped, 
at which point {@code filePath} denotes the path to the local zip.
    +    * After the upload to the cluster, {@code filePath} denotes the 
(server-side) copy of the zip.
    +    */
        public static class DistributedCacheEntry implements Serializable {
    --- End diff --
    It might be out of scope of this PR but I think the `DistributedCacheEntry` 
mixes too many responsibilities. On the one hand it is used to transport cache 
entry information like `isZipped`, `blobKey` and `isExecutable` which is only 
relevant for the job submission. On the other hand, it also contains 
information about which files to transmit to the cluster at the job creation 
time. I think it would be a good idea to separate these responsibilities. As a 
side effect, we would not have `nullable` fields such as the `blobKey` in this 

> Extend JobSubmitHandler to accept jar files
> -------------------------------------------
>                 Key: FLINK-9280
>                 URL: https://issues.apache.org/jira/browse/FLINK-9280
>             Project: Flink
>          Issue Type: New Feature
>          Components: Job-Submission, REST
>    Affects Versions: 1.5.0
>            Reporter: Chesnay Schepler
>            Assignee: Chesnay Schepler
>            Priority: Critical
>             Fix For: 1.6.0, 1.5.1
> The job submission through the CLI first uploads all require jars to the blob 
> server, sets the blob keys in the jobgraph, and then uploads this graph to 
> The {{JobSubmitHandler}} which submits it to the Dispatcher.
> This process has the downside that it requires jars to be uploaded to the 
> blobserver before submitting the job graph, which does not happen via REST.
> I propose an extension to the the {{JobSubmitHandler}} to also accept an 
> optional list of jar files, that were previously uploaded through the 
> {{JarUploadHandler}}. If present, the handler would upload these jars to the 
> blobserver and set the blob keys.

This message was sent by Atlassian JIRA

Reply via email to