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

[jira] [Updated] (CASSANDRA-7735) Remove ref-counting of netty buffers

     [ https://issues.apache.org/jira/browse/CASSANDRA-7735?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

T Jake Luciani updated CASSANDRA-7735:
--------------------------------------

    Attachment: 7735.txt

Removes all the frame refcounting.  I've opted to keep the netty allocator pooled since it avoids the leak detection stuff and simply copy the data on heap in CBUtil.readValue() which is the only place that passed the raw ByteBuffer along.

Benchmarking shows a ~5% performance hit and increased latency as expected :/ 

> Remove ref-counting of netty buffers
> ------------------------------------
>
>                 Key: CASSANDRA-7735
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7735
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Benedict
>            Assignee: T Jake Luciani
>            Priority: Critical
>              Labels: correctness, performance
>             Fix For: 2.1 rc5
>
>         Attachments: 7735.txt
>
>
> This has turned out to be more bug prone than we'd hoped, and it no longer seems to be a justified risk factor, since the performance gains were generally quite modest. When there's some time we can reengineer the API to make it safer to produce more obviously correct usage, but in the meantime I propose rolling back this change before general availability of 2.1



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