[
https://issues.apache.org/jira/browse/CURATOR-354?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Cameron McKenzie closed CURATOR-354.
------------------------------------
> GzipCompressionProvider leaks native memory
> -------------------------------------------
>
> Key: CURATOR-354
> URL: https://issues.apache.org/jira/browse/CURATOR-354
> Project: Apache Curator
> Issue Type: Bug
> Affects Versions: 2.11.0
> Reporter: Evan Pollan
> Assignee: Jordan Zimmerman
> Fix For: 3.2.1, 2.11.1
>
> Attachments: RSS before and after fix.png
>
>
> Both compress and decompress instantiate GZIP streams, use them, and don't
> close them. The java util deflate/inflate streams use JNI to leverage zlib,
> including the allocation of a native, off-heap buffer.
> These JNI buffer handles are released when the containing stream is closed.
> They're also released by the finalize() method on
> java.util.zip.Inflater/Deflater, _but_ it looks as if the native memory can
> pile up quickly enough in certain use cases where the JVM is OOM killed
> before the finalizer does its thing.
> Fix is to explicitly close these streams after they're used.
> This was discovered in version 2.11.0, but it looks like the problem affects
> all versions for which {{GzipCompressionProvider}} existed.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)