You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by se...@apache.org on 2018/03/08 16:51:03 UTC

[4/5] flink git commit: [FLINK-8885] [TaskManager] DispatcherThreadFactory registers a fatal error exception handler

[FLINK-8885] [TaskManager] DispatcherThreadFactory registers a fatal error exception handler

In case dispatcher threads let an exception bubble out (do not handle the exception), the
exception handler terminates the process, to ensure we don't leave broken processes.


Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/dd82f872
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/dd82f872
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/dd82f872

Branch: refs/heads/master
Commit: dd82f8720fa5aeb3a29c858cd7c032ff25f935ae
Parents: 1d77b66
Author: Stephan Ewen <se...@apache.org>
Authored: Tue Mar 6 17:14:54 2018 +0100
Committer: Stephan Ewen <se...@apache.org>
Committed: Thu Mar 8 16:22:08 2018 +0100

----------------------------------------------------------------------
 .../runtime/taskmanager/DispatcherThreadFactory.java      | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/dd82f872/flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/DispatcherThreadFactory.java
----------------------------------------------------------------------
diff --git a/flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/DispatcherThreadFactory.java b/flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/DispatcherThreadFactory.java
index 543b159..9cec524 100644
--- a/flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/DispatcherThreadFactory.java
+++ b/flink-runtime/src/main/java/org/apache/flink/runtime/taskmanager/DispatcherThreadFactory.java
@@ -18,6 +18,8 @@
 
 package org.apache.flink.runtime.taskmanager;
 
+import org.apache.flink.runtime.util.FatalExitExceptionHandler;
+
 import javax.annotation.Nullable;
 
 import java.util.concurrent.ThreadFactory;
@@ -27,13 +29,14 @@ import java.util.concurrent.ThreadFactory;
  * thread group, and set them to daemon mode.
  */
 public class DispatcherThreadFactory implements ThreadFactory {
-	
+
 	private final ThreadGroup group;
-	
+
 	private final String threadName;
 
+	@Nullable
 	private final ClassLoader classLoader;
-	
+
 	/**
 	 * Creates a new thread factory.
 	 *
@@ -67,6 +70,7 @@ public class DispatcherThreadFactory implements ThreadFactory {
 			t.setContextClassLoader(classLoader);
 		}
 		t.setDaemon(true);
+		t.setUncaughtExceptionHandler(FatalExitExceptionHandler.INSTANCE);
 		return t;
 	}
 }