[ 
https://issues.apache.org/jira/browse/KUDU-1682?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jean-Daniel Cryans updated KUDU-1682:
-------------------------------------
    Code Review: https://gerrit.cloudera.org/#/c/4706/

> Lock contention on table locations cache in Java client
> -------------------------------------------------------
>
>                 Key: KUDU-1682
>                 URL: https://issues.apache.org/jira/browse/KUDU-1682
>             Project: Kudu
>          Issue Type: Bug
>          Components: client, perf
>    Affects Versions: 1.0.0
>            Reporter: Todd Lipcon
>            Assignee: Jean-Daniel Cryans
>            Priority: Minor
>             Fix For: 1.1.0
>
>
> Running YCSB with 16 threads, I see a lot of contention on the table 
> locations cache:
> {code}
> "Thread-15" #36 prio=5 os_prio=0 tid=0x00007f2300391000 nid=0xfb2 waiting for 
> monitor entry [0x00007f229a452000]
>    java.lang.Thread.State: BLOCKED (on object monitor)
>         at 
> org.apache.kudu.client.TableLocationsCache.get(TableLocationsCache.java:62)
>         - locked <0x00000001da767c78> (a java.lang.Object)
>         at 
> org.apache.kudu.client.AsyncKuduClient.getTableLocationEntry(AsyncKuduClient.java:1429)
>         at 
> org.apache.kudu.client.AsyncKuduClient.loopLocateTable(AsyncKuduClient.java:1184)
>         at 
> org.apache.kudu.client.AsyncKuduClient.locateTable(AsyncKuduClient.java:1240)
>         at 
> org.apache.kudu.client.AsyncKuduClient.getTabletLocation(AsyncKuduClient.java:1449)
> {code}
> Since this changes rarely, we should make it a read-write lock.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to