[
https://issues.apache.org/jira/browse/CASSANDRA-2521?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13057305#comment-13057305
]
Sylvain Lebresne commented on CASSANDRA-2521:
---------------------------------------------
bq. Not sure if we are missing something in terms of reference counting and GC
delete it eventually
If you don't use mmap, the GC shouldn't do anything. So if it is deleted
eventually, it would indicate some place where we last decrement is delayed
longer that it needs somehow. It'd be interesting if you find more.
bq. in submitUserDefined() there is a finally statement removing References for
"sstables" but I could not immediately see where there are References acquired
It's in the lookupSSTables (a private method used by submitUserDefined). I
admit it's not super clean but It felt like the simplest way to do this in a
thread safe manner without holding unneeded references for too long.
bq. Only thing missing beyond that is to get this into 0.8.
I really don't think this would be reasonable. This is not a trivial change by
any mean, nor does it fixes a regression. Which is not saying it doesn't make
life much easier. But I'm really uncomfortable pushing that to 0.8.
> Move away from Phantom References for Compaction/Memtable
> ---------------------------------------------------------
>
> Key: CASSANDRA-2521
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2521
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Chris Goffinet
> Assignee: Sylvain Lebresne
> Fix For: 1.0
>
> Attachments:
> 0001-Use-reference-counting-to-decide-when-a-sstable-can-.patch,
> 0001-Use-reference-counting-to-decide-when-a-sstable-can-v2.patch,
> 0002-Force-unmapping-files-before-deletion-v2.patch, 2521-v3.txt, 2521-v4.txt
>
>
> http://wiki.apache.org/cassandra/MemtableSSTable
> Let's move to using reference counting instead of relying on GC to be called
> in StorageService.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira