MAPREDUCE-6443. Add JvmPauseMonitor to JobHistoryServer. Contributed by Robert Kanter.

This commit is contained in:
Junping Du 2015-08-06 07:00:42 -07:00
parent 7af531d2e3
commit c8469357ba
2 changed files with 15 additions and 2 deletions

View File

@ -103,6 +103,9 @@ Release 2.8.0 - UNRELEASED
MAPREDUCE-5762. Port MAPREDUCE-3223 and MAPREDUCE-4695 (Remove MRv1 config
from mapred-default.xml) to branch-2. (aajisaka)
MAPREDUCE-6443. Add JvmPauseMonitor to JobHistoryServer. (Robert Kanter
via junping_du)
OPTIMIZATIONS
MAPREDUCE-6376. Add avro binary support for jhist files (Ray Chiang via

View File

@ -38,6 +38,7 @@ import org.apache.hadoop.service.AbstractService;
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;
@ -70,6 +71,7 @@ public class JobHistoryServer extends CompositeService {
private AggregatedLogDeletionService aggLogDelService;
private HSAdminServer hsAdminServer;
private HistoryServerStateStoreService stateStore;
private JvmPauseMonitor pauseMonitor;
// utility class to start and stop secret manager as part of service
// framework and implement state recovery for secret manager on startup
@ -140,6 +142,12 @@ public class JobHistoryServer extends CompositeService {
addService(clientService);
addService(aggLogDelService);
addService(hsAdminServer);
DefaultMetricsSystem.initialize("JobHistoryServer");
JvmMetrics jm = JvmMetrics.initSingleton("JobHistoryServer", null);
pauseMonitor = new JvmPauseMonitor(getConfig());
jm.setPauseMonitor(pauseMonitor);
super.serviceInit(config);
}
@ -190,14 +198,16 @@ public class JobHistoryServer extends CompositeService {
@Override
protected void serviceStart() throws Exception {
DefaultMetricsSystem.initialize("JobHistoryServer");
JvmMetrics.initSingleton("JobHistoryServer", null);
pauseMonitor.start();
super.serviceStart();
}
@Override
protected void serviceStop() throws Exception {
DefaultMetricsSystem.shutdown();
if (pauseMonitor != null) {
pauseMonitor.stop();
}
super.serviceStop();
}