From 1c54a25a7acc1b1d75741f137179c27c3dbb1943 Mon Sep 17 00:00:00 2001 From: Naresh P R Date: Fri, 24 May 2019 23:17:51 +0530 Subject: [PATCH] HIVE-16906 - Hive ATSHook should check for yarn.timeline-service.enabled before connecting to ATS Signed-off-by: Naresh P R --- .../org/apache/hadoop/hive/ql/hooks/ATSHook.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/ql/src/java/org/apache/hadoop/hive/ql/hooks/ATSHook.java b/ql/src/java/org/apache/hadoop/hive/ql/hooks/ATSHook.java index 9cb4d8c4b7..0632f6ee2c 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/hooks/ATSHook.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/hooks/ATSHook.java @@ -68,6 +68,7 @@ public class ATSHook implements ExecuteWithHookContext { private static final Logger LOG = LoggerFactory.getLogger(ATSHook.class.getName()); + private boolean isATSEnabled = false; private static final Object LOCK = new Object(); private static final int VERSION = 2; private static ExecutorService executor; @@ -143,7 +144,15 @@ public void run() { } public ATSHook() { - LOG.info("Created ATS Hook"); + YarnConfiguration yarnConf = new YarnConfiguration(); + if (yarnConf.getBoolean(YarnConfiguration.TIMELINE_SERVICE_ENABLED, + YarnConfiguration.DEFAULT_TIMELINE_SERVICE_ENABLED)) { + isATSEnabled = true; + LOG.info("Created ATS Hook"); + } else { + isATSEnabled = false; + LOG.warn("ATSHook is disabled due to Timeline Service being disabled"); + } } private void createTimelineDomain(String domainId, String readers, String writers) throws Exception { @@ -219,6 +228,9 @@ public void run() { } @Override public void run(final HookContext hookContext) throws Exception { + if (!isATSEnabled) { + return; + } final long currentTime = System.currentTimeMillis(); final HiveConf conf = new HiveConf(hookContext.getConf()); -- 2.18.0