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

Pavel Yaskevich commented on CASSANDRA-5661:
--------------------------------------------

LRU is more of a replacement strategy when you have distinct objects and fixed 
upper limit (num items, memory), but in here we deal with mostly duplicate 
objects and the states where num of items hardly overgrows queue so the problem 
is not handling replacement but rather expiring items after some period of 
idling. I was thinking of doing something like ExpiringQueue with the one (or 
set of timers) similar to Guava Cache. Which solves the problem of [C]RAR 
instances being stuck in the cache for long periods of time even when read 
pattern have changed and they are not useful anymore.
                
> Discard pooled readers for cold data
> ------------------------------------
>
>                 Key: CASSANDRA-5661
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5661
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.2.1
>            Reporter: Jonathan Ellis
>            Assignee: Pavel Yaskevich
>             Fix For: 1.2.7
>
>
> Reader pooling was introduced in CASSANDRA-4942 but pooled 
> RandomAccessReaders are never cleaned up until the SSTableReader is closed.  
> So memory use is "the worst case simultaneous RAR we had open for this file, 
> forever."
> We should introduce a global limit on how much memory to use for RAR, and 
> evict old ones.

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