Repository: hadoop Updated Branches: refs/heads/trunk 8e9a26681 -> 614b6afea
YARN-2917. Fixed potential deadlock when system.exit is called in AsyncDispatcher. Contributed by Rohith Sharmaks Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/614b6afe Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/614b6afe Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/614b6afe Branch: refs/heads/trunk Commit: 614b6afea450ebb897fbb2519c6f02e13b9bd12d Parents: 8e9a266 Author: Jian He <[email protected]> Authored: Thu Dec 11 11:16:45 2014 -0800 Committer: Jian He <[email protected]> Committed: Thu Dec 11 11:17:54 2014 -0800 ---------------------------------------------------------------------- hadoop-yarn-project/CHANGES.txt | 3 +++ .../apache/hadoop/yarn/event/AsyncDispatcher.java | 15 +++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/614b6afe/hadoop-yarn-project/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index 832efee..3432f6f 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -214,6 +214,9 @@ Release 2.7.0 - UNRELEASED YARN-2924. Fixed RMAdminCLI to not convert node labels to lower case. (Wangda Tan via jianhe) + YARN-2917. Fixed potential deadlock when system.exit is called in AsyncDispatcher + (Rohith Sharmaks via jianhe) + Release 2.6.0 - 2014-11-18 INCOMPATIBLE CHANGES http://git-wip-us.apache.org/repos/asf/hadoop/blob/614b6afe/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/event/AsyncDispatcher.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/event/AsyncDispatcher.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/event/AsyncDispatcher.java index 370b0f7..28be6ac 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/event/AsyncDispatcher.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/event/AsyncDispatcher.java @@ -181,8 +181,9 @@ public class AsyncDispatcher extends AbstractService implements Dispatcher { if (exitOnDispatchException && (ShutdownHookManager.get().isShutdownInProgress()) == false && stopped == false) { - LOG.info("Exiting, bbye.."); - System.exit(-1); + Thread shutDownThread = new Thread(createShutDownThread()); + shutDownThread.setName("AsyncDispatcher ShutDown handler"); + shutDownThread.start(); } } } @@ -271,4 +272,14 @@ public class AsyncDispatcher extends AbstractService implements Dispatcher { } } + + Runnable createShutDownThread() { + return new Runnable() { + @Override + public void run() { + LOG.info("Exiting, bbye.."); + System.exit(-1); + } + }; + } }
