[ 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