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

Jonathan Ellis commented on CASSANDRA-2252:
-------------------------------------------

bq. Adding region recycling post-flush

Of course this has the same reference counting problem as JNA free does: we 
can't re-use the buffer until we're sure nobody's reading from it anymore.

I'm inclined to just do in-heap buffers for the memtables to start with.  
Unlike cached rows, we're virtually guaranteed contention on the memtable 
objects if we try to do AtomicInteger-based reference counting, and sharded 
threadlocal counting is more of a pita than I want to tackle at the moment.

I suspect that, like HBase, we'll realize substantial wins from area allocation 
even on-heap.

> off-heap memtables
> ------------------
>
>                 Key: CASSANDRA-2252
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2252
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>             Fix For: 1.0
>
>         Attachments: 0001-add-MemtableAllocator.txt, 
> 0002-add-off-heap-MemtableAllocator-support.txt, 2252-v3.txt, merged-2252.tgz
>
>   Original Estimate: 0.4h
>  Remaining Estimate: 0.4h
>
> The memtable design practically actively fights Java's GC design.  Todd 
> Lipcon gave a good explanation over on HBASE-3455.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to