Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-15109

HM/RS failed to start when "fs.hdfs.impl.disable.cache" is set to true

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • 2.0.0
    • 1.4.0, 2.0.0
    • regionserver
    • 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

        1. HBASE-15109.patch
          1 kB
          Pankaj Kumar
        2. HBASE-15109.patch
          1.0 kB
          Ted Yu
        3. HBASE-15109-branch-1.patch
          1 kB
          Pankaj Kumar
        4. HBASE-15109-V2.patch
          2 kB
          Pankaj Kumar

        Issue Links

          Activity

            People

              pankaj2461 Pankaj Kumar
              pankaj2461 Pankaj Kumar
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: