APAR status
Closed as program error.
Error description
Error Message: java.io.IOException: BZip2 CRC error . Stack Trace: Caused by: java.io.IOException: BZip2 CRC error at org.apache.commons.compress.compressors.bzip2.BZip2CompressorInp utStream.endBlock(BZip2CompressorInputStream.java:349) at org.apache.commons.compress.compressors.bzip2.BZip2CompressorInp utStream.setupNoRandPartA(BZip2CompressorInputStream.java:819) at org.apache.commons.compress.compressors.bzip2.BZip2CompressorInp utStream.setupNoRandPartB(BZip2CompressorInputStream.java:868) at org.apache.commons.compress.compressors.bzip2.BZip2CompressorInp utStream.read0(BZip2CompressorInputStream.java:229) at org.apache.commons.compress.compressors.bzip2.BZip2CompressorInp utStream.read(BZip2CompressorInputStream.java:177) at org.apache.avro.file.BZip2Codec.decompress(BZip2Codec.java:73) at org.apache.avro.file.DataFileStream$DataBlock.decompressUsing(Da taFileStream.java:355) at org.apache.avro.file.DataFileStream.hasNext(DataFileStream.java: 199) . The issue is a small scale corruption, typically within a 64bit memory write. How this corruption presents from a failure perspective depends on the context. The failure may not always present as an exception. The issue is caused by the JIT compiler Z code generator and therefore can only occur on IBM Z (zOS and zLinux). It is possible that the issue is easier to appear when using the "Balanced" GC policy with the "offHeap" enhancement (introduced in Java 8.0.8.50).
Local fix
There is no way to prevent the Z code generator from using the failing code sequence, but if the problem is occurring when using the "Balanced" GC policy, switching to the default "Gencon" policy will likely avoid the problem.
Problem summary
The JIT can use the "MVC" IBM Z instruction to performance a memory to memory copy, but in some rare cases we failed to ensure that the source and destination of the copy do not overlap. When there is overlapping, trailing parts of the source could get overwritten when writing to the destination.
Problem conclusion
The JIT was modified so that when we are unable to guarantee that no overlapping exist, we will not use a MVC instruction and instead use a load/store instruction pair. https://github.com/eclipse-omr/omr/pull/8273 . This APAR will be fixed in the following Releases: . IBM Semeru Runtimes 25 25.0.4.0 21 21.0.12.0 17 17.0.20.0 11 11.0.32.0 IBM SDK, Java Technology Edition 8 SR8 FP70 (8.0.8.70) . Downloads and supplementary documentation can be found at the following locations: - For non z/OS operating systems: - IBM Semeru Runtimes, Version 11 and later https://www.ibm.com/semeru-runtimes/downloads/ - IBM SDK, Java Technology Edition, Version 8 https://www.ibm.com/support/pages/java-sdk-downloads/ - For the z/OS operating system: - Java SDK Products on z/OS https://www.ibm.com/support/pages/java-sdk-products-zos
Temporary fix
Comments
APAR Information
APAR number
IJ58601
Reported component name
JIT
Reported component ID
620700124
Reported release
130
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2026-06-08
Closed date
2026-06-23
Last modified date
2026-06-24
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
JIT
Fixed component ID
620700124
Applicable component levels
[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSNVBF","label":"Runtimes for Java Technology"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"130","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}}]
Document Information
Modified date:
24 June 2026