Return-Path: Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: (qmail 31088 invoked from network); 11 Mar 2011 06:07:22 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 11 Mar 2011 06:07:21 -0000 Received: (qmail 65960 invoked by uid 500); 11 Mar 2011 06:07:21 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 65928 invoked by uid 500); 11 Mar 2011 06:07:21 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 65920 invoked by uid 99); 11 Mar 2011 06:07:21 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Mar 2011 06:07:21 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Mar 2011 06:07:20 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 902A83A3F35 for ; Fri, 11 Mar 2011 06:06:59 +0000 (UTC) Date: Fri, 11 Mar 2011 06:06:59 +0000 (UTC) From: "Ted Yu (JIRA)" To: issues@hbase.apache.org Message-ID: <212636349.12755.1299823619587.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <1189191154.12414.1299805272650.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] Commented: (HBASE-3622) Deadlock in HBaseServer (JVM bug?) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HBASE-3622?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13005509#comment-13005509 ] Ted Yu commented on HBASE-3622: ------------------------------- I noticed this: {code} protected BlockingQueue callQueue; // queued calls protected BlockingQueue priorityCallQueue; {code} I wonder if what values the following parameters carried in his cluster: hbase.regionserver.handler.count hbase.regionserver.metahandler.count > Deadlock in HBaseServer (JVM bug?) > ---------------------------------- > > Key: HBASE-3622 > URL: https://issues.apache.org/jira/browse/HBASE-3622 > Project: HBase > Issue Type: Bug > Affects Versions: 0.90.1 > Reporter: Jean-Daniel Cryans > Priority: Critical > Fix For: 0.92.0 > > Attachments: HBASE-3622.patch > > > On Dmitriy's cluster: > {code} > "IPC Reader 0 on port 60020" prio=10 tid=0x00002aacb4a82800 nid=0x3a72 waiting on condition [0x00000000429ba000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x00002aaabf5fa6d0> (a java.util.concurrent.locks.ReentrantLock$NonfairSync) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158) > at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:747) > at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:778) > at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1114) > at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:186) > at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:262) > at java.util.concurrent.LinkedBlockingQueue.signalNotEmpty(LinkedBlockingQueue.java:103) > at java.util.concurrent.LinkedBlockingQueue.put(LinkedBlockingQueue.java:267) > at org.apache.hadoop.hbase.ipc.HBaseServer$Connection.processData(HBaseServer.java:985) > at org.apache.hadoop.hbase.ipc.HBaseServer$Connection.readAndProcess(HBaseServer.java:946) > at org.apache.hadoop.hbase.ipc.HBaseServer$Listener.doRead(HBaseServer.java:522) > at org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader.run(HBaseServer.java:316) > - locked <0x00002aaabf580fb0> (a org.apache.hadoop.hbase.ipc.HBaseServer$Listener$Reader) > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > ... > "IPC Server handler 29 on 60020" daemon prio=10 tid=0x00002aacbc163800 nid=0x3acc waiting on condition [0x00000000462f3000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x00002aaabf5e3800> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158) > at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925) > at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:358) > at org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1025) > "IPC Server handler 28 on 60020" daemon prio=10 tid=0x00002aacbc161800 nid=0x3acb waiting on condition [0x00000000461f2000] > java.lang.Thread.State: WAITING (parking) > at sun.misc.Unsafe.park(Native Method) > - parking to wait for <0x00002aaabf5e3800> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) > at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158) > at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925) > at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:358) > at org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1025 > ... > {code} > This region server stayed in this state for hours. The reader is waiting to put and the handlers are waiting to take, and they wait on different lock ids. It reminds me of the UseMembar thing about the JVM sometime missing to notify waiters. In any case, that RS needed to be closed in order to get out of that state. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira