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

Terminating standalone process is slow

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 3.0.0-alpha-2
    • None
    • Zookeeper
    • None

    Description

      Run hbase in standalone mode off of master, terminate the process with ^C. The process takes its sweet time to terminate. Luckily, we have some thread management utility code to inspect this behavior. Jetty takes a little time to shutdown, but does eventually. More problematic is the ZooKeeper client, which appears to not take a hint. In fact, the client attempts to initiate new connections to a service which has already been terminated, making matters worse.

      2022-06-06T11:59:36,137 INFO  [main] util.Threads: Non daemon thread SessionTracker is still alive
      2022-06-06T11:59:36,137 INFO  [main] util.Threads:
          java.base@11.0.11/java.lang.Thread.sleep(Native Method)
          app//org.apache.zookeeper.server.SessionTrackerImpl.run(SessionTrackerImpl.java:151)
      2022-06-06T11:59:36,137 INFO  [main] util.Threads: Non daemon thread RS:0;192.168.178.157:16020 is still alive
      2022-06-06T11:59:36,137 INFO  [main] util.Threads:
          java.base@11.0.11/java.lang.Object.wait(Native Method)
          java.base@11.0.11/java.lang.Object.wait(Object.java:328)
          app//org.apache.zookeeper.ClientCnxn.submitRequest(ClientCnxn.java:1529)
          app//org.apache.zookeeper.ClientCnxn.submitRequest(ClientCnxn.java:1512)
          app//org.apache.zookeeper.ZooKeeper.delete(ZooKeeper.java:1791)
          app//org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.delete(RecoverableZooKeeper.java:210)
          app//org.apache.hadoop.hbase.zookeeper.ZKUtil.deleteNode(ZKUtil.java:851)
          app//org.apache.hadoop.hbase.zookeeper.ZKUtil.deleteNode(ZKUtil.java:843)
          app//org.apache.hadoop.hbase.regionserver.HRegionServer.deleteMyEphemeralNode(HRegionServer.java:1453)
          app//org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:969)
          java.base@11.0.11/java.lang.Thread.run(Thread.java:829)
      2022-06-06T11:59:36,137 INFO  [main] util.Threads: Non daemon thread Thread-2 is still alive
      2022-06-06T11:59:36,138 INFO  [main] util.Threads:
          java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
          java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
          java.base@11.0.11/java.util.concurrent.FutureTask.awaitDone(FutureTask.java:444)
          java.base@11.0.11/java.util.concurrent.FutureTask.get(FutureTask.java:203)
          app//org.apache.hadoop.util.ShutdownHookManager.executeShutdown(ShutdownHookManager.java:124)
          app//org.apache.hadoop.util.ShutdownHookManager$1.run(ShutdownHookManager.java:95)
      2022-06-06T11:59:36,392 INFO  [SessionTracker] server.SessionTrackerImpl: SessionTrackerImpl exited loop!
      2022-06-06T11:59:36,442 INFO  [main-SendThread(127.0.0.1:2181)] zookeeper.ClientCnxn: Opening socket connection to server localhost/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown err
      or)
      2022-06-06T11:59:36,442 INFO  [main-SendThread(127.0.0.1:2181)] zookeeper.ClientCnxn: Socket error occurred: localhost/127.0.0.1:2181: Connection refused
      

      Full session in the attached log.

      Attachments

        1. shutdown-error.log
          55 kB
          Nick Dimiduk

        Activity

          People

            Unassigned Unassigned
            ndimiduk Nick Dimiduk
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: