You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Robert Stupp (JIRA)" <ji...@apache.org> on 2015/09/01 10:05:46 UTC

[jira] [Commented] (CASSANDRA-9738) Migrate key-cache to be fully off-heap

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

Robert Stupp commented on CASSANDRA-9738:
-----------------------------------------

bq. index info offsets in the serialization

Yes, we can still change the on-disk format for indexes in 3.0. It's a todo for this ticket.

bq. Caching the last used IndexInfo is going to force a little bit of promotion

Did that because some places in the code regularly access the "current" IndexInfo. Feels cheaper than having to deserialize the whole object multiple times.

bq. operate on the IndexInfo as a ByteBuffer 

Would be beneficial (could save some two memory copies per IndexInfo) - but as you said it's not easy. I gave it a quick try but ref-counting watchdog complained about unreleased references. I think we still save a lot with the serialized index-offsets and only deserializing the really needed objects.

bq. Reference counting shouldn't be too bad

Seems doable (together with IndexInfo as a ByteBuffer). But I'd like to defer this to a follow-up ticket.

I think we can get this working for 3.0 - so saving temporary garbage on the heap for cached and non-cached RIE.
As I said in 9754, I think that RIE+II (including key cache) has probably reached its EOL with all the ongoing effort to optimize/replace the structure and algorithms.

> Migrate key-cache to be fully off-heap
> --------------------------------------
>
>                 Key: CASSANDRA-9738
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9738
>             Project: Cassandra
>          Issue Type: Sub-task
>            Reporter: Robert Stupp
>            Assignee: Robert Stupp
>             Fix For: 3.0 beta 2
>
>
> Key cache still uses a concurrent map on-heap. This could go to off-heap and feels doable now after CASSANDRA-8099.
> Evaluation should be done in advance based on a POC to prove that pure off-heap counter cache buys a performance and/or gc-pressure improvement.
> In theory, elimination of on-heap management of the map should buy us some benefit.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)