[ 
https://issues.apache.org/jira/browse/FLINK-1789?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14948287#comment-14948287
 ] 

ASF GitHub Bot commented on FLINK-1789:
---------------------------------------

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

    https://github.com/apache/flink/pull/593#discussion_r41488791
  
    --- Diff: 
flink-java/src/main/java/org/apache/flink/api/java/RemoteEnvironment.java ---
    @@ -55,21 +59,8 @@
        /** Optional shutdown hook, used in session mode to eagerly terminate 
the last session */
        private Thread shutdownHook;
     
    -   /**
    -    * Creates a new RemoteEnvironment that points to the master 
(JobManager) described by the
    -    * given host name and port.
    -    * 
    -    * <p>Each program execution will have all the given JAR files in its 
classpath.
    -    * 
    -    * @param host The host name or address of the master (JobManager), 
where the program should be executed.
    -    * @param port The port of the master (JobManager), where the program 
should be executed. 
    -    * @param jarFiles The JAR files with code that needs to be shipped to 
the cluster. If the program uses
    -    *                 user-defined functions, user-defined input formats, 
or any libraries, those must be
    -    *                 provided in the JAR files.
    -    */     
    -   public RemoteEnvironment(String host, int port, String... jarFiles) {
    --- End diff --
    
    Could we keep this constructor?


> Allow adding of URLs to the usercode class loader
> -------------------------------------------------
>
>                 Key: FLINK-1789
>                 URL: https://issues.apache.org/jira/browse/FLINK-1789
>             Project: Flink
>          Issue Type: Improvement
>          Components: Distributed Runtime
>            Reporter: Timo Walther
>            Assignee: Timo Walther
>            Priority: Minor
>
> Currently, there is no option to add customs classpath URLs to the 
> FlinkUserCodeClassLoader. JARs always need to be shipped to the cluster even 
> if they are already present on all nodes.
> It would be great if RemoteEnvironment also accepts valid classpaths URLs and 
> forwards them to BlobLibraryCacheManager.
> The problem with the current approach is that the code loaded by the regular 
> JVM class loader cannot refer to job specific types (which can be accessed 
> only at the UserCodeClassLoader level). Unfortunately, this is the case if we 
> use the classpath entry to generate the dataflows dynamically at runtime.
> Currently this functionality needs to be done by "hacks" (hardcode a 
> filesystem path next to the list of jars when initializing the BlobManager 
> entry). It makes sense to open an issue which makes this list parameterizable 
> via an additional ExecutionEnvironment argument (this is basically the only 
> main feature which prohibits the use of Emma project with "off-the-shelf" 
> Flink).
> This, of course, would require that the folders are shared (e.g. via NFS) 
> between client, master and workers. I think what made Stephan so excited is 
> the idea of using the same URL mechanism in order to ship the code to all 
> dependent parties (most probably by running a dedicated HTTP or FTP server on 
> the client).
> We make the following assumptions for the use case where we need the global 
> class path:
> - The URL is either a file path that points to a directory accessible to all 
> nodes (NFS or so) and the client runs in the cluster as well.
> - The URL is an HTTP URL or so that points to a file server that serves the 
> classes to work in non-shared directory settings.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to