[ https://issues.apache.org/jira/browse/HADOOP-12475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14959969#comment-14959969 ]
Hudson commented on HADOOP-12475: --------------------------------- FAILURE: Integrated in Hadoop-Hdfs-trunk-Java8 #503 (See [https://builds.apache.org/job/Hadoop-Hdfs-trunk-Java8/503/]) HADOOP-12475. Replace guava Cache with ConcurrentHashMap for caching (sjlee: rev 8d2d3eb7bb938cc06ea3cc74040cfe0be13a2ba8) * hadoop-common-project/hadoop-common/CHANGES.txt * hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java > Replace guava Cache with ConcurrentHashMap for caching Connection in ipc > Client > ------------------------------------------------------------------------------- > > Key: HADOOP-12475 > URL: https://issues.apache.org/jira/browse/HADOOP-12475 > Project: Hadoop Common > Issue Type: Sub-task > Components: conf, io, ipc > Reporter: Walter Su > Assignee: Walter Su > Fix For: 2.8.0 > > Attachments: HADOOP-12475.01.patch, HADOOP-12475.02.patch, > HADOOP-12475.03.patch > > > quote [~daryn] from HADOOP-11772: > {quote} > CacheBuilder is obscenely expensive for concurrent map, and it requires > generating unnecessary garbage even just to look up a key. Replace it with > ConcurrentHashMap. > I identified this issue that impaired my own perf testing under load. The > slowdown isn't just the sync. It's the expensive of Connection's ctor > stalling other connections. The expensive of ConnectionId#equals causes > delays. Synch'ing on connections causes unfair contention unlike a sync'ed > method. Concurrency simply hides this. > {quote} > BTW, guava Cache is heavyweight. Per local test, ConcurrentHashMap has better > overal performance. -- This message was sent by Atlassian JIRA (v6.3.4#6332)