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

Jeff Kesselman commented on CASSANDRA-2521:
-------------------------------------------

Relying on either finalizers or phantom references for your own clean up is not 
correct.  These mechanisms are not triggered when an object becomes a candidate 
for collection, but  only when the space is actually reclaimed.  

The time between these two states is up to the gc implementation and can be 
infinite in that the gc is never *required* to collect any given object unless 
failure to collect that object would result in an Out Of Memory condition.  GCs 
often only partially collect, choosing the easiest objects to clean up first 
and going no further if no more space is required.  A null gc that never 
collects space is actually perfectly legal under the java VM specification and 
has actually been used by IBM in the past for certain operational environments.

> 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
>            Reporter: Chris Goffinet
>            Assignee: Sylvain Lebresne
>             Fix For: 1.0
>
>
> 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

        

Reply via email to