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 2009/09/10 07:42:57 UTC

[jira] Commented: (HBASE-1753) Deadlock in client using deprecated APIs in a multi-threaded application

    [ https://issues.apache.org/jira/browse/HBASE-1753?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12753432#action_12753432 ] 

stack commented on HBASE-1753:
------------------------------

I've seen this.   The block is on locateRegion.   I saw it on the gario cluster.  It happens at startup when lots of threads.  In his case, he was able to slow the thread rollout and then all ran well.

Threads are blocked here:

{code}
   java.lang.Thread.State: BLOCKED (on object monitor)
	at org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:527)
	- waiting to lock <0x00007f2b453210d0> (a java.lang.Object)
{code}

Here is thread that has the lock:

{code}
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegionInMeta(HConnectionManager.java:635)
	at org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:528)
	- locked <0x00007f2b453210d0> (a java.lang.Object)
	at org.apache.hadoop.hbase.client.HConnectionManager$TableServers.relocateRegion(HConnectionManager.java:497)
{code}

We're doing something dumb in the way we go through this synchronization block... 

In garios case, the table was big. 

I think that the case here too.

In the gario case, suggestion was a call to prime the HTable cache by single-threadedly reading the .META. content.   He's testing currently.

> Deadlock in client using deprecated APIs in a multi-threaded application
> ------------------------------------------------------------------------
>
>                 Key: HBASE-1753
>                 URL: https://issues.apache.org/jira/browse/HBASE-1753
>             Project: Hadoop HBase
>          Issue Type: Bug
>    Affects Versions: 0.20.0
>            Reporter: Jim Kellerman
>             Fix For: 0.20.1
>
>         Attachments: load-8-7.out
>
>
> There is a deadlock somewhere in HTable or HConnectionManager when using the deprecated API in a multi-threaded application.
> I haven't had a chance to look at the thread dump in detail yet, but will attach it to this issue

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.