hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ian Rogers (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HADOOP-11526) Memory leak in Bzip2Decompressor
Date Fri, 30 Jan 2015 03:58:34 GMT
Ian Rogers created HADOOP-11526:
-----------------------------------

             Summary: Memory leak in Bzip2Decompressor
                 Key: HADOOP-11526
                 URL: https://issues.apache.org/jira/browse/HADOOP-11526
             Project: Hadoop Common
          Issue Type: Bug
          Components: io
            Reporter: Ian Rogers


The use of JNI's GetStringUTFChars should be paired with ReleaseStringUTFChars or else the
utf-8 char* created by Java's JNI implementation is leaked. It isn't in Bzip2Decompressor.c:

https://apache.googlesource.com/hadoop-common/+/refs/heads/trunk/hadoop-common-project/hadoop-common/src/main/native/src/org/apache/hadoop/io/compress/bzip2/Bzip2Decompressor.c#45

A less error-prone way of handling JNI resources like local references and UTF strings is
to use a smart pointer like the Apache licensed code in Android's ScopedLocalRef and ScopedUtfChars:

https://android.googlesource.com/platform/libnativehelper/+/jb-mr1.1-dev-plus-aosp/include/nativehelper/ScopedLocalRef.h
https://android.googlesource.com/platform/libnativehelper/+/jb-mr1.1-dev-plus-aosp/include/nativehelper/ScopedUtfChars.h



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

Mime
View raw message