From 5ae288872bf3e949a456a5c6230b8e439ac88577 Mon Sep 17 00:00:00 2001 From: Pankaj Kumar Date: Mon, 10 Oct 2016 11:11:34 +0800 Subject: [PATCH] HBASE-15109, HM/RS failed to start when "fs.hdfs.impl.disable.cache" is set to true. --- .../java/org/apache/hadoop/hbase/regionserver/ShutdownHook.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ShutdownHook.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ShutdownHook.java index b5f37e8..83e4ea8 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ShutdownHook.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/ShutdownHook.java @@ -199,10 +199,11 @@ public class ShutdownHook { throw new RuntimeException("Client finalizer is null, can't suppress!"); } synchronized (fsShutdownHooks) { - if (!fsShutdownHooks.containsKey(hdfsClientFinalizer) && - !ShutdownHookManager.deleteShutdownHook(hdfsClientFinalizer)) { - throw new RuntimeException("Failed suppression of fs shutdown hook: " + - hdfsClientFinalizer); + boolean isFSCacheDisabled = fs.getConf().getBoolean("fs.hdfs.impl.disable.cache", false); + if (!isFSCacheDisabled && !fsShutdownHooks.containsKey(hdfsClientFinalizer) + && !ShutdownHookManager.deleteShutdownHook(hdfsClientFinalizer)) { + throw new RuntimeException( + "Failed suppression of fs shutdown hook: " + hdfsClientFinalizer); } Integer refs = fsShutdownHooks.get(hdfsClientFinalizer); fsShutdownHooks.put(hdfsClientFinalizer, refs == null ? 1 : refs + 1); -- 2.7.2.windows.1