Todd Lipcon created KUDU-1682:
---------------------------------
Summary: 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
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)