[ 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)