You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "stack (JIRA)" <ji...@apache.org> on 2018/01/18 19:13:00 UTC

[jira] [Created] (HBASE-19822) HFileCleaner threads stick around after shutdown stuck on queue#take

stack created HBASE-19822:
-----------------------------

             Summary: HFileCleaner threads stick around after shutdown stuck on queue#take
                 Key: HBASE-19822
                 URL: https://issues.apache.org/jira/browse/HBASE-19822
             Project: HBase
          Issue Type: Bug
            Reporter: stack
            Assignee: stack


In thread dumps and in unit tests I see a lot of this:

Potentially hanging thread: M:0;asf903:36485-HFileCleaner.large.0-1516277241553
	sun.misc.Unsafe.park(Native Method)
	java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
	org.apache.hadoop.hbase.util.StealJobQueue.take(StealJobQueue.java:106)
	org.apache.hadoop.hbase.master.cleaner.HFileCleaner.consumerLoop(HFileCleaner.java:232)
	org.apache.hadoop.hbase.master.cleaner.HFileCleaner$1.run(HFileCleaner.java:201)


Potentially hanging thread: M:1;asf903:38770-HFileCleaner.large.0-1516277250526
	sun.misc.Unsafe.park(Native Method)
	java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
	org.apache.hadoop.hbase.util.StealJobQueue.take(StealJobQueue.java:106)
	org.apache.hadoop.hbase.master.cleaner.HFileCleaner.consumerLoop(HFileCleaner.java:232)
	org.apache.hadoop.hbase.master.cleaner.HFileCleaner$1.run(HFileCleaner.java:201)


Or long after a server has been killed in a unit test, I'll see this if a thread dump:

Thread 1635 (M:0;asf903:36485-HFileCleaner.small.0-1516277241554):
  State: WAITING
  Blocked count: 0
  Waited count: 1
  Waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@626c1c7e
  Stack:
    sun.misc.Unsafe.park(Native Method)
    java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
    java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
    java.util.concurrent.PriorityBlockingQueue.take(PriorityBlockingQueue.java:549)
    org.apache.hadoop.hbase.master.cleaner.HFileCleaner.consumerLoop(HFileCleaner.java:232)
    org.apache.hadoop.hbase.master.cleaner.HFileCleaner$2.run(HFileCleaner.java:216)
Thread 1634 (M:0;asf903:36485-HFileCleaner.large.0-1516277241553):
  State: WAITING
  Blocked count: 0
  Waited count: 2
  Waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2f961ff0
  Stack:
    sun.misc.Unsafe.park(Native Method)
    java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
    java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
    org.apache.hadoop.hbase.util.StealJobQueue.take(StealJobQueue.java:106)
    org.apache.hadoop.hbase.master.cleaner.HFileCleaner.consumerLoop(HFileCleaner.java:232)
    org.apache.hadoop.hbase.master.cleaner.HFileCleaner$1.run(HFileCleaner.java:201)





--
This message was sent by Atlassian JIRA
(v7.6.3#76005)