You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kudu.apache.org by "Todd Lipcon (JIRA)" <ji...@apache.org> on 2016/10/07 18:19:20 UTC

[jira] [Updated] (KUDU-1682) Lock contention on table locations cache in Java client

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

Todd Lipcon updated KUDU-1682:
------------------------------
    Priority: Minor  (was: Major)

> 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
>            Priority: Minor
>
> 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)