[
https://issues.apache.org/jira/browse/CASSANDRA-5661?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13701490#comment-13701490
]
Pavel Yaskevich commented on CASSANDRA-5661:
--------------------------------------------
The only point I disagree with is "rarely explicitly invalidated", this is not
true especially with LCS and small files, that work already done for us by
compaction, things we need to care are - expiry after access + total memory
limit (as concurrency is also limited by read stage size so all of the queues
are implicitly bounded). My implementation is fairly simple and takes advantage
of all services provided by upper levels (compaction for eviction, read stage
for concurrently limiting) as well as build-in guava cache compatibilities of
expiring items and handling removals.
> 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
>
> Attachments: CASSANDRA-5661.patch, DominatorTree.png, Histogram.png
>
>
> 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