You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by gu...@apache.org on 2015/12/24 22:19:22 UTC
hive git commit: HIVE-12741: HS2 ShutdownHookManager holds extra of
Driver instance in master/branch-2.0 (Thejas Nair, reviewed by Daniel Dai)
Repository: hive
Updated Branches:
refs/heads/master 0b810991a -> 267b4e811
HIVE-12741: HS2 ShutdownHookManager holds extra of Driver instance in master/branch-2.0 (Thejas Nair, reviewed by Daniel Dai)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/267b4e81
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/267b4e81
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/267b4e81
Branch: refs/heads/master
Commit: 267b4e81153756ddb9ce6af23cb2d50e8161de08
Parents: 0b81099
Author: Gunther Hagleitner <gu...@apache.org>
Authored: Thu Dec 24 13:18:59 2015 -0800
Committer: Gunther Hagleitner <gu...@apache.org>
Committed: Thu Dec 24 13:18:59 2015 -0800
----------------------------------------------------------------------
.../java/org/apache/hive/common/util/ShutdownHookManager.java | 5 ++++-
ql/src/java/org/apache/hadoop/hive/ql/Driver.java | 6 +++---
2 files changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hive/blob/267b4e81/common/src/java/org/apache/hive/common/util/ShutdownHookManager.java
----------------------------------------------------------------------
diff --git a/common/src/java/org/apache/hive/common/util/ShutdownHookManager.java b/common/src/java/org/apache/hive/common/util/ShutdownHookManager.java
index b5f7e69..5efeda9 100644
--- a/common/src/java/org/apache/hive/common/util/ShutdownHookManager.java
+++ b/common/src/java/org/apache/hive/common/util/ShutdownHookManager.java
@@ -172,9 +172,12 @@ public class ShutdownHookManager {
*
* @param shutdownHook shutdownHook to remove.
* @return TRUE if the shutdownHook was registered and removed,
- * FALSE otherwise.
+ * FALSE otherwise (including when shutdownHook == null)
*/
public static boolean removeShutdownHook(Runnable shutdownHook) {
+ if (shutdownHook == null) {
+ return false;
+ }
return MGR.removeShutdownHookInternal(shutdownHook);
}
http://git-wip-us.apache.org/repos/asf/hive/blob/267b4e81/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/Driver.java b/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
index 52f5528..29e6315 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
@@ -413,6 +413,8 @@ public class Driver implements CommandProcessor {
final HiveTxnManager txnManager = SessionState.get().initTxnMgr(conf);
// In case when user Ctrl-C twice to kill Hive CLI JVM, we want to release locks
+ // if compile is being called multiple times, clear the old shutdownhook
+ ShutdownHookManager.removeShutdownHook(shutdownRunner);
shutdownRunner = new Runnable() {
@Override
public void run() {
@@ -1910,10 +1912,8 @@ public class Driver implements CommandProcessor {
LOG.warn("Exception when releasing locking in destroy: " +
e.getMessage());
}
- if (shutdownRunner != null) {
- ShutdownHookManager.removeShutdownHook(shutdownRunner);
- }
}
+ ShutdownHookManager.removeShutdownHook(shutdownRunner);
}
public org.apache.hadoop.hive.ql.plan.api.Query getQueryPlan() throws IOException {