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

Yu Li commented on HBASE-17747:
-------------------------------

bq. So here there is no change in usage of soft ref instead of weak.. Just you 
doing the abstraction and giving both impls so as to make a way for the 
embedded mode usage.
{{IdReadWriteLock}} has been changed to use soft reference, please check the 
change there and let me know if any concern sir [~anoop.hbase], thanks.

> Support both weak and soft object pool
> --------------------------------------
>
>                 Key: HBASE-17747
>                 URL: https://issues.apache.org/jira/browse/HBASE-17747
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Yu Li
>            Assignee: Yu Li
>         Attachments: HBASE-17747.patch
>
>
> During YCSB testing on embedded mode after HBASE-17744, we found that under 
> high read load GC is quite severe even with offheap L2 cache. After some 
> investigation, we found it's caused by using weak reference for 
> IdReadWriteLock. In embedded mode the read is so quick that the lock might 
> already get promoted to the old generation when the weak reference is 
> cleared, which causes dirty card table thus slowing YGC.
> So we proposed to use soft reference for this IdReadWriteLock used in cache, 
> which won't get cleared until JVM memory is not enough, and could resolve the 
> issue mentioned above. What's more, we propose to extend the WeakObjectPool 
> to be more generate to support both weak and soft reference.
> Note that this issue only emerges under embedded mode with DirectOperator, in 
> which case all costs on the wire is removed thus produces extremely high 
> workloads.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to