cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oleg Anastasyev (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CASSANDRA-6078) Wrong memtable size estimation: liveRatio is not honored in edge cases
Date Mon, 23 Sep 2013 11:10:11 GMT

     [ https://issues.apache.org/jira/browse/CASSANDRA-6078?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Oleg Anastasyev updated CASSANDRA-6078:
---------------------------------------

    Description: 
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.


  was:
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 is underestimates memtables sizes.


    
> 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
>         Attachments: 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

Mime
View raw message