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

Ariel Weisberg commented on CASSANDRA-13906:
--------------------------------------------

So to bikeshed this all to hell. Wouldn't the most idiomatic way to do this be 
to have TrackedDataInputPlus implement Closable and use try with resources?

In fact try with resources will let you declare all the Closeable things in the 
same try block and clean up if one of the things you are using to wrap throws 
in it's constructor preventing the wrapped resource from leaking.

> Properly close StreamCompressionInputStream to release any ByteBuf
> ------------------------------------------------------------------
>
>                 Key: CASSANDRA-13906
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13906
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Jason Brown
>            Assignee: Jason Brown
>
> When running dtests for trunk (4.x) that perform some streaming, sometimes a 
> {{ByteBuf}} is not released properly, and we get this error in the logs 
> (causing the dtest to fail):
> {code}
> ERROR [MessagingService-NettyOutbound-Thread-4-2] 2017-09-26 13:42:37,940 
> Slf4JLogger.java:176 - LEAK: ByteBuf.release() was not called before it's 
> garbage-collected. Enable advanced leak reporting to find out where the leak 
> occurred. To enable advanced leak reporting, specify the JVM option 
> '-Dio.netty.leakDetection.level=advanced' or call 
> ResourceLeakDetector.setLevel() See 
> http://netty.io/wiki/reference-counted-objects.html for more information.
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to