[ 
https://issues.apache.org/jira/browse/HBASE-16648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15508510#comment-15508510
 ] 

Duo Zhang commented on HBASE-16648:
-----------------------------------

OK, I found the problem...

The map will not be empty every time as the test method will be invoked 
multiple times in a iteration, so the get method is very important as we can 
eliminate most of the actual compute or put operation... This is the reason why 
putIfAbsent is much faster. If I also add a get method before computeIfAbsent 
then the speed will be almost same. Let me find a better way to test the case 
where we always create a new object.

Thanks...

> [JDK8] Use computeIfAbsent instead of get and putIfAbsent
> ---------------------------------------------------------
>
>                 Key: HBASE-16648
>                 URL: https://issues.apache.org/jira/browse/HBASE-16648
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Performance
>    Affects Versions: 2.0.0
>            Reporter: Duo Zhang
>            Assignee: Duo Zhang
>             Fix For: 2.0.0
>
>         Attachments: HBASE-16648-v1.patch, HBASE-16648-v2.patch, 
> HBASE-16648.patch
>
>




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

Reply via email to