You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by rk...@apache.org on 2015/08/13 00:51:30 UTC
hadoop git commit: YARN-4031. Add JvmPauseMonitor to
ApplicationHistoryServer and WebAppProxyServer (djp via rkanter)
Repository: hadoop
Updated Branches:
refs/heads/trunk 820f864a2 -> dc2340c60
YARN-4031. Add JvmPauseMonitor to ApplicationHistoryServer and WebAppProxyServer (djp via rkanter)
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/dc2340c6
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/dc2340c6
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/dc2340c6
Branch: refs/heads/trunk
Commit: dc2340c60e33f903f8fd34958ec746c989016191
Parents: 820f864
Author: Robert Kanter <rk...@apache.org>
Authored: Wed Aug 12 15:47:47 2015 -0700
Committer: Robert Kanter <rk...@apache.org>
Committed: Wed Aug 12 15:47:47 2015 -0700
----------------------------------------------------------------------
hadoop-yarn-project/CHANGES.txt | 3 ++
.../ApplicationHistoryServer.java | 14 +++++++--
.../yarn/server/webproxy/WebAppProxyServer.java | 32 ++++++++++++++++++--
3 files changed, 45 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/dc2340c6/hadoop-yarn-project/CHANGES.txt
----------------------------------------------------------------------
diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt
index 4c70a8a..9745d9d 100644
--- a/hadoop-yarn-project/CHANGES.txt
+++ b/hadoop-yarn-project/CHANGES.txt
@@ -396,6 +396,9 @@ Release 2.8.0 - UNRELEASED
YARN-4026. Refactored ContainerAllocator to accept a list of priorites
rather than a single priority. (Wangda Tan via jianhe)
+ YARN-4031. Add JvmPauseMonitor to ApplicationHistoryServer and
+ WebAppProxyServer (djp via rkanter)
+
OPTIMIZATIONS
YARN-3339. TestDockerContainerExecutor should pull a single image and not
http://git-wip-us.apache.org/repos/asf/hadoop/blob/dc2340c6/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryServer.java
----------------------------------------------------------------------
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryServer.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryServer.java
index 88cd153..0ec27d7 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryServer.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryServer.java
@@ -34,6 +34,7 @@ import org.apache.hadoop.service.CompositeService;
import org.apache.hadoop.service.Service;
import org.apache.hadoop.util.ExitUtil;
import org.apache.hadoop.util.GenericOptionsParser;
+import org.apache.hadoop.util.JvmPauseMonitor;
import org.apache.hadoop.util.ReflectionUtils;
import org.apache.hadoop.util.ShutdownHookManager;
import org.apache.hadoop.util.StringUtils;
@@ -73,6 +74,7 @@ public class ApplicationHistoryServer extends CompositeService {
private TimelineDelegationTokenSecretManagerService secretManagerService;
private TimelineDataManager timelineDataManager;
private WebApp webApp;
+ private JvmPauseMonitor pauseMonitor;
public ApplicationHistoryServer() {
super(ApplicationHistoryServer.class.getName());
@@ -96,7 +98,9 @@ public class ApplicationHistoryServer extends CompositeService {
addService((Service) historyManager);
DefaultMetricsSystem.initialize("ApplicationHistoryServer");
- JvmMetrics.initSingleton("ApplicationHistoryServer", null);
+ JvmMetrics jm = JvmMetrics.initSingleton("ApplicationHistoryServer", null);
+ pauseMonitor = new JvmPauseMonitor(conf);
+ jm.setPauseMonitor(pauseMonitor);
super.serviceInit(conf);
}
@@ -107,6 +111,10 @@ public class ApplicationHistoryServer extends CompositeService {
} catch(IOException ie) {
throw new YarnRuntimeException("Failed to login", ie);
}
+
+ if (pauseMonitor != null) {
+ pauseMonitor.start();
+ }
super.serviceStart();
startWebApp();
}
@@ -116,7 +124,9 @@ public class ApplicationHistoryServer extends CompositeService {
if (webApp != null) {
webApp.stop();
}
-
+ if (pauseMonitor != null) {
+ pauseMonitor.stop();
+ }
DefaultMetricsSystem.shutdown();
super.serviceStop();
}
http://git-wip-us.apache.org/repos/asf/hadoop/blob/dc2340c6/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-web-proxy/src/main/java/org/apache/hadoop/yarn/server/webproxy/WebAppProxyServer.java
----------------------------------------------------------------------
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-web-proxy/src/main/java/org/apache/hadoop/yarn/server/webproxy/WebAppProxyServer.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-web-proxy/src/main/java/org/apache/hadoop/yarn/server/webproxy/WebAppProxyServer.java
index b1c563c..4c1caa6 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-web-proxy/src/main/java/org/apache/hadoop/yarn/server/webproxy/WebAppProxyServer.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-web-proxy/src/main/java/org/apache/hadoop/yarn/server/webproxy/WebAppProxyServer.java
@@ -22,10 +22,13 @@ import java.io.IOException;
import java.net.InetSocketAddress;
import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.metrics2.lib.DefaultMetricsSystem;
+import org.apache.hadoop.metrics2.source.JvmMetrics;
import org.apache.hadoop.security.SecurityUtil;
import org.apache.hadoop.service.CompositeService;
import org.apache.hadoop.util.ExitUtil;
import org.apache.hadoop.util.GenericOptionsParser;
+import org.apache.hadoop.util.JvmPauseMonitor;
import org.apache.hadoop.util.ShutdownHookManager;
import org.apache.hadoop.util.StringUtils;
import org.apache.hadoop.yarn.YarnUncaughtExceptionHandler;
@@ -48,7 +51,9 @@ public class WebAppProxyServer extends CompositeService {
WebAppProxyServer.class);
private WebAppProxy proxy = null;
-
+
+ private JvmPauseMonitor pauseMonitor;
+
public WebAppProxyServer() {
super(WebAppProxyServer.class.getName());
}
@@ -56,12 +61,35 @@ public class WebAppProxyServer extends CompositeService {
@Override
protected void serviceInit(Configuration conf) throws Exception {
Configuration config = new YarnConfiguration(conf);
- doSecureLogin(conf);
+ doSecureLogin(conf);
proxy = new WebAppProxy();
addService(proxy);
+
+ DefaultMetricsSystem.initialize("WebAppProxyServer");
+ JvmMetrics jm = JvmMetrics.initSingleton("WebAppProxyServer", null);
+ pauseMonitor = new JvmPauseMonitor(conf);
+ jm.setPauseMonitor(pauseMonitor);
+
super.serviceInit(config);
}
+ @Override
+ protected void serviceStart() throws Exception {
+ if (pauseMonitor != null) {
+ pauseMonitor.start();
+ }
+ super.serviceStart();
+ }
+
+ @Override
+ protected void serviceStop() throws Exception {
+ super.serviceStop();
+ DefaultMetricsSystem.shutdown();
+ if (pauseMonitor != null) {
+ pauseMonitor.stop();
+ }
+ }
+
/**
* Log in as the Kerberose principal designated for the proxy
* @param conf the configuration holding this information in it.