YARN-8054. Improve robustness of the LocalDirsHandlerService MonitoringTimerTask thread. Contributed by Jonathan Eagles
(cherry picked from commit 5aa7052e319c3273243dda9993fb6c2d776eb7cc) (cherry picked from commit 5d4b2c31a19b2ce7d94a9ca12ed6a1def428bb83) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/dc075b72 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/dc075b72 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/dc075b72 Branch: refs/heads/branch-3.1.0 Commit: dc075b727a1dbb28cb28dd9a0f59b8b7c9b9a591 Parents: d7d35fd Author: Jason Lowe <[email protected]> Authored: Wed Mar 21 17:19:20 2018 -0500 Committer: Wangda Tan <[email protected]> Committed: Thu Mar 29 09:38:50 2018 -0700 ---------------------------------------------------------------------- .../yarn/server/nodemanager/LocalDirsHandlerService.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/dc075b72/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java index c0630b2..621cabc 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LocalDirsHandlerService.java @@ -166,7 +166,12 @@ public class LocalDirsHandlerService extends AbstractService { @Override public void run() { - checkDirs(); + try { + checkDirs(); + } catch (Throwable t) { + // Prevent uncaught exceptions from killing this thread + LOG.warn("Error while checking local directories: ", t); + } } } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
