[
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: [email protected]
For additional commands, e-mail: [email protected]