[09/12] flink git commit: [FLINK-3236] [runtime] Flink user code classloader as parent classloader from Flink core classes
[FLINK-3236] [runtime] Flink user code classloader as parent classloader from Flink core classes Originally, the user code classloader delegates to the system classloader as parent. That works in Flink standalone settings, but not when the Flink core classes themselves are not loaded with the system classloader (certain embedded setups). This patch uses as parent the classloader that was used to load the Flink core classes, specificly "org.apache.flink.runtime.execution.librarycache.BlobLibraryCacheManager.FlinkUserCodeClassLoader.class.getClassLoader()". This closes #1506 This closes #1507 This closes #1508 Project: http://git-wip-us.apache.org/repos/asf/flink/repo Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/0ae46b59 Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/0ae46b59 Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/0ae46b59 Branch: refs/heads/master Commit: 0ae46b596949808f56c40bd7a68f478bc10206ab Parents: 388c280 Author: Prez CannadyAuthored: Thu Jan 14 10:15:12 2016 -0500 Committer: Stephan Ewen Committed: Fri Jan 15 11:44:20 2016 +0100 -- .../runtime/execution/librarycache/BlobLibraryCacheManager.java| 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/flink/blob/0ae46b59/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java -- diff --git a/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java b/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java index 97ec93a..98caac4 100644 --- a/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java +++ b/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java @@ -326,7 +326,7 @@ public final class BlobLibraryCacheManager extends TimerTask implements LibraryC private static class FlinkUserCodeClassLoader extends URLClassLoader { public FlinkUserCodeClassLoader(URL[] urls) { - super(urls); + super(urls, FlinkUserCodeClassLoader.class.getClassLoader()); } } }
flink git commit: [FLINK-3236] [runtime] Flink user code classloader as parent classloader from Flink core classes
Repository: flink Updated Branches: refs/heads/release-0.10 d09a83320 -> 2d7f0b1af [FLINK-3236] [runtime] Flink user code classloader as parent classloader from Flink core classes Originally, the user code classloader delegates to the system classloader as parent. That works in Flink standalone settings, but not when the Flink core classes themselves are not loaded with the system classloader (certain embedded setups). This patch uses as parent the classloader that was used to load the Flink core classes, specificly "org.apache.flink.runtime.execution.librarycache.BlobLibraryCacheManager.FlinkUserCodeClassLoader.class.getClassLoader()". Project: http://git-wip-us.apache.org/repos/asf/flink/repo Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/2d7f0b1a Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/2d7f0b1a Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/2d7f0b1a Branch: refs/heads/release-0.10 Commit: 2d7f0b1af7f490e6f341ed0b08aa561a67e457b5 Parents: d09a833 Author: Prez CannadyAuthored: Thu Jan 14 10:15:12 2016 -0500 Committer: Stephan Ewen Committed: Thu Jan 14 21:48:09 2016 +0100 -- .../runtime/execution/librarycache/BlobLibraryCacheManager.java| 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/flink/blob/2d7f0b1a/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java -- diff --git a/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java b/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java index 97ec93a..98caac4 100644 --- a/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java +++ b/flink-runtime/src/main/java/org/apache/flink/runtime/execution/librarycache/BlobLibraryCacheManager.java @@ -326,7 +326,7 @@ public final class BlobLibraryCacheManager extends TimerTask implements LibraryC private static class FlinkUserCodeClassLoader extends URLClassLoader { public FlinkUserCodeClassLoader(URL[] urls) { - super(urls); + super(urls, FlinkUserCodeClassLoader.class.getClassLoader()); } } }