[ https://issues.apache.org/jira/browse/HADOOP-11772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Akira AJISAKA updated HADOOP-11772: ----------------------------------- Target Version/s: 2.8.0 Status: Patch Available (was: Open) > RPC Invoker relies on static ClientCache which has synchronized(this) blocks > ---------------------------------------------------------------------------- > > Key: HADOOP-11772 > URL: https://issues.apache.org/jira/browse/HADOOP-11772 > Project: Hadoop Common > Issue Type: Sub-task > Components: ipc > Reporter: Gopal V > Assignee: Akira AJISAKA > Attachments: HADOOP-11772-001.patch, sync-client-bt.png, > sync-client-threads.png > > > {code} > private static ClientCache CLIENTS=new ClientCache(); > ... > this.client = CLIENTS.getClient(conf, factory); > {code} > Meanwhile in ClientCache > {code} > public synchronized Client getClient(Configuration conf, > SocketFactory factory, Class<? extends Writable> valueClass) { > ... > Client client = clients.get(factory); > if (client == null) { > client = new Client(valueClass, conf, factory); > clients.put(factory, client); > } else { > client.incCount(); > } > {code} > All invokers end up calling these methods, resulting in IPC clients choking > up. > !sync-client-threads.png! > !sync-client-bt.png! -- This message was sent by Atlassian JIRA (v6.3.4#6332)