Uploaded image for project: 'Kafka'
  1. Kafka
  2. KAFKA-2421

Upgrade LZ4 to version 1.3 to avoid crashing with IBM Java 7

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.8.2.1
    • Fix Version/s: 0.10.0.0
    • Component/s: None
    • Labels:
      None
    • Environment:
      IBM Java 7

      Description

      Upgrade LZ4 to version 1.3 to avoid crashing with IBM Java 7.

      LZ4 version 1.2 crashes with 64-bit IBM Java 7. This has been fixed in LZ4 version 1.3 (https://github.com/jpountz/lz4-java/blob/master/CHANGES.md, https://github.com/jpountz/lz4-java/pull/46).

      The unit test org.apache.kafka.common.record.MemoryRecordsTest crashes when run with 64-bit IBM Java7 with the error:

      00000000023EB900: Native Method 000000000263CE10 (net/jpountz/lz4/LZ4JNI.LZ4_compress_limitedOutput([BII[BII)I)
      00000000023EB900: Invalid JNI call of function void ReleasePrimitiveArrayCritical(JNIEnv *env, jarray array, void *carray, jint mode): For array 00000000FFF7EAB8 parameter carray passed 00000000FFF85998, expected to be 00000000FFF7EAC0
      14:08:42.763 0x23eb900 j9mm.632 * ** ASSERTION FAILED ** at StandardAccessBarrier.cpp:335: ((false))
      JVMDUMP039I Processing dump event "traceassert", detail "" at 2015/08/11 15:08:42 - please wait.

      Stack trace from javacore:

      3XMTHREADINFO3 Java callstack:
      4XESTACKTRACE at net/jpountz/lz4/LZ4JNI.LZ4_compress_limitedOutput(Native Method)
      4XESTACKTRACE at net/jpountz/lz4/LZ4JNICompressor.compress(LZ4JNICompressor.java:31)
      4XESTACKTRACE at net/jpountz/lz4/LZ4Factory.<init>(LZ4Factory.java:163)
      4XESTACKTRACE at net/jpountz/lz4/LZ4Factory.instance(LZ4Factory.java:46)
      4XESTACKTRACE at net/jpountz/lz4/LZ4Factory.nativeInstance(LZ4Factory.java:76)
      5XESTACKTRACE (entered lock: net/jpountz/lz4/LZ4Factory@0x00000000E02F0BE8, entry count: 1)
      4XESTACKTRACE at net/jpountz/lz4/LZ4Factory.fastestInstance(LZ4Factory.java:129)
      4XESTACKTRACE at org/apache/kafka/common/record/KafkaLZ4BlockOutputStream.<init>(KafkaLZ4BlockOutputStream.java:72)
      4XESTACKTRACE at org/apache/kafka/common/record/KafkaLZ4BlockOutputStream.<init>(KafkaLZ4BlockOutputStream.java:93)
      4XESTACKTRACE at org/apache/kafka/common/record/KafkaLZ4BlockOutputStream.<init>(KafkaLZ4BlockOutputStream.java:103)
      4XESTACKTRACE at sun/reflect/NativeConstructorAccessorImpl.newInstance0(Native Method)
      4XESTACKTRACE at sun/reflect/NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:86)
      4XESTACKTRACE at sun/reflect/DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:58)
      4XESTACKTRACE at java/lang/reflect/Constructor.newInstance(Constructor.java:542)
      4XESTACKTRACE at org/apache/kafka/common/record/Compressor.wrapForOutput(Compressor.java:222)
      4XESTACKTRACE at org/apache/kafka/common/record/Compressor.<init>(Compressor.java:72)
      4XESTACKTRACE at org/apache/kafka/common/record/Compressor.<init>(Compressor.java:76)
      4XESTACKTRACE at org/apache/kafka/common/record/MemoryRecords.<init>(MemoryRecords.java:43)
      4XESTACKTRACE at org/apache/kafka/common/record/MemoryRecords.emptyRecords(MemoryRecords.java:51)
      4XESTACKTRACE at org/apache/kafka/common/record/MemoryRecords.emptyRecords(MemoryRecords.java:55)
      4XESTACKTRACE at org/apache/kafka/common/record/MemoryRecordsTest.testIterator(MemoryRecordsTest.java:42)

      java -version
      java version "1.7.0"
      Java(TM) SE Runtime Environment (build pxa6470_27sr3fp1-20150605_01(SR3 FP1))
      IBM J9 VM (build 2.7, JRE 1.7.0 Linux amd64-64 Compressed References 20150407_243189 (JIT enabled, AOT enabled)
      J9VM - R27_Java727_SR3_20150407_1831_B243189
      JIT - tr.r13.java_20150406_89182
      GC - R27_Java727_SR3_20150407_1831_B243189_CMPRSS
      J9CL - 20150407_243189)
      JCL - 20150601_01 based on Oracle 7u79-b14

        Attachments

        1. KAFKA-2421.patch
          2 kB
          Rajini Sivaram
        2. kafka-2421_2015-09-08_11:38:03.patch
          2 kB
          Rajini Sivaram
        3. KAFKA-2421_2015-08-11_18:54:26.patch
          2 kB
          Rajini Sivaram

          Activity

            People

            • Assignee:
              granthenke Grant Henke
              Reporter:
              rsivaram Rajini Sivaram
            • Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: