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

Alex Petrov commented on CASSANDRA-11937:
-----------------------------------------

[~tjake] turns out that same exact non-recycled reference will keep hanging 
because of {{BTree$Builder}} reference that holds on to the same object. 
Screenshot attached. 

So we have to call something similar to {{reuse}} before we actually recycle 
the object, that'd clean it up before it gets recycled, since we discard the 
values on reuse anyways.

The other possible issue (still theoretically possible, although tests are 
passing even without Netty patch, maybe because of major GC) GC nepotism that 
you've previously mentioned. Because in Recycler {{Stack}} object is a hard 
reference, the item that has to get recycled, keeps hanging. That could be 
technically solved by making the reference weak. 

> Clean up buffer trimming large buffers in DataOutputBuffer after the Netty 
> upgrade
> ----------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-11937
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11937
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Alex Petrov
>            Assignee: Alex Petrov
>              Labels: lhf, netty, reminder
>         Attachments: Screen Shot 2016-06-22 at 15.24.05.png
>
>
> In [https://issues.apache.org/jira/browse/CASSANDRA-11838|11838], we're 
> trimming the large buffers in {{DataOutputBuffer}}. The patch is already 
> submitted and merged in [Netty 
> 4.1|https://github.com/netty/netty/commit/bbed330468b5b82c9e4defa59012d0fcdb70f1aa],
>  we only need to make sure that we throw large buffers away1 alltogether 
> instead of trimming them.



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

Reply via email to