Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Fixed
-
2.0.0
-
None
-
Reviewed
Description
HMaster failed to start during installing ShutdownHook when "fs.hdfs.impl.disable.cache" is set to true.
2016-10-10 10:33:28,367 FATAL [master/HOST-10-18-106-146/10.18.106.146:16000] master.HMaster: Unhandled: Failed suppression of fs shutdown hook: org.apache.hadoop.fs.FileSystem$Cache$ClientFinalizer@19a003b4 java.lang.RuntimeException: Failed suppression of fs shutdown hook: org.apache.hadoop.fs.FileSystem$Cache$ClientFinalizer@19a003b4 at org.apache.hadoop.hbase.regionserver.ShutdownHook.suppressHdfsShutdownHook(ShutdownHook.java:204) at org.apache.hadoop.hbase.regionserver.ShutdownHook.install(ShutdownHook.java:84) at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:950) at java.lang.Thread.run(Thread.java:745)
And RegionServer is in blocking state until a master is available,
"regionserver/HOST-10-18-106-146/10.18.106.146:16020" #17 prio=5 os_prio=0 tid=0x0000000000e4e800 nid=0xdc38 in Object.wait() [0x00007f329dac6000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.apache.hadoop.hbase.zookeeper.ZooKeeperNodeTracker.blockUntilAvailable(ZooKeeperNodeTracker.java:159) - locked <0x00000000ae25c0c8> (a org.apache.hadoop.hbase.zookeeper.MasterAddressTracker) at org.apache.hadoop.hbase.regionserver.HRegionServer.blockAndCheckIfStopped(HRegionServer.java:870) at org.apache.hadoop.hbase.regionserver.HRegionServer.initializeZooKeeper(HRegionServer.java:809) at org.apache.hadoop.hbase.regionserver.HRegionServer.preRegistrationInitialization(HRegionServer.java:783) at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:943) at java.lang.Thread.run(Thread.java:745)
During installation, first time it will try to suppress the HDFS shutdownhook by removing the hdfsclientfinalizer from HDFS. Since fs.hdfs.impl.disable.cache is enabled, so removal will be unsuccessful from HDFS (FS is not cached) and RuntimeException will be thrown with "Failed suppression of fs shutdown hook" message.
In ShutdownHook,
if (!fsShutdownHooks.containsKey(hdfsClientFinalizer) && !ShutdownHookManager.deleteShutdownHook(hdfsClientFinalizer)) { throw new RuntimeException("Failed suppression of fs shutdown hook: " + hdfsClientFinalizer); }
Attachments
Attachments
Issue Links
- is related to
-
HBASE-18862 backport HBASE-15109 to branch-1.2,branch-1.3
- Resolved