guoweiM commented on a change in pull request #10256: [FLINK-14467][runtime]
Let MesosJobClusterEntrypoint use user code class loader
URL: https://github.com/apache/flink/pull/10256#discussion_r348931566
##########
File path:
flink-runtime/src/main/java/org/apache/flink/runtime/clusterframework/overlays/FlinkDistributionOverlay.java
##########
@@ -43,13 +43,14 @@
* possible to bypass this overlay and rely on the normal installation method.
*
* <p>The following files are copied to the container:
- * - flink/bin/
- * - flink/conf/
- * - flink/lib/
+ * - bin/
Review comment:
The `AbstractUserClassPathJobGraphRetriever` has an assumption:
The process of `TaskManager` and `ClusterEntryPoint` has the same directory
structure about the current working dir. This implies that the relative paths
of the user jar files, which are retrieved at the `CusterEntryPoint` process
could be accessed by `TaskManager` processes.
Before this pr, the working directory of the `TaskManager` process looks like
<pre>
|_flink
|_bin
|_conf
|_lib
</pre>
There might be three ways to satisfy the above assumption:
1. Let the user make a `flink` directory and start the cluster using the
cmd `flink/bin/mesos-appmaster-job.sh .....`
1. `cd` into the `flink` directory before starting the `TaskManager`
process. I think it is a little weird that we make a directory then cd into it
and run a cmd.
1. The third method is to remove the `flink` prefix.
I prefer the third one is because this way does not let the user do anything
and could keep the view of the working directory of the `TaskManager` for
`Standalone&Yarn&Mesos` same(almost).
----------------------------------------------------------------
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