You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Benedict (JIRA)" <ji...@apache.org> on 2014/04/14 15:11:16 UTC

[jira] [Commented] (CASSANDRA-6843) Reclaim overwritten off-heap memtable space early

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

Benedict commented on CASSANDRA-6843:
-------------------------------------

So, in order to make this more palatable, I think it may be possible to make a dramatically simpler patch based on CASSANDRA-6696 only, that simple delegates to unsafe.allocateMemory() and unsafe.freeMemory(). A round of both clocks in at around 100-200ns, so in the grand scheme of things isn't very hefty, but the code complexity here should be pretty minimal to zero. We can have NativeAllocator configurably allocate from a block or simply the exact amount requested, and if the latter we can buffer any free() requests up and periodically commit any that were buffered prior to the latest OpOrder.Barrier issuance.

I would quite like to see this minor change make it into 2.1, as it should be really helpful to those users with an overwrite workload. We can then kick the zero-copy and off-heap-gc work down the road for now (i.e. abandon them for the time being).

[~xedin] [~slebresne] what do you think?

> Reclaim overwritten off-heap memtable space early
> -------------------------------------------------
>
>                 Key: CASSANDRA-6843
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6843
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Benedict
>            Assignee: Benedict
>              Labels: performance
>             Fix For: 3.0
>
>
> Perform GC on the off-heap memtable arenas



--
This message was sent by Atlassian JIRA
(v6.2#6252)