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

Jason Brown commented on CASSANDRA-6078:
----------------------------------------

I think this is a legit change to protect against the upper bound problem. I'd 
rather flush more frequently than OOM more frequently. 

lgtm
                
> Wrong memtable size estimation: liveRatio is not honored in edge cases
> ----------------------------------------------------------------------
>
>                 Key: CASSANDRA-6078
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6078
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Oleg Anastasyev
>            Priority: Minor
>             Fix For: 1.2.11, 2.0.2
>
>         Attachments: 6078-v2.txt, Memtable-getLiveSize.diff
>
>
> Memtable.getLiveSize does not honours liveRatio the correct way: 
> allocator.get**Size() return sizes allocated only by name and columns data 
> (i.e. no liveRatio applied); but conditions, which cap estimated size, 
> compare it with estimatedSize, already multiplied by liveRatio.
> If liveRatio is big enough (i've seen >11 on our dataset), this leads to huge 
> estimation errors and even to OutOfMemory, because MeteredFlusher  
> underestimates memtables sizes.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to