Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
0.8.2.1
-
None
-
None
-
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