Bug 1375358

Summary: OpenJDK crash in java.util.zip.Deflater.deflateBytes
Product: Red Hat Enterprise Linux 6 Reporter: Mike Millson <mmillson>
Component: java-1.7.0-openjdkAssignee: Deepak Bhole <dbhole>
Status: CLOSED WONTFIX QA Contact: BaseOS QE - Apps <qe-baseos-apps>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.6CC: ahughes, cww, jvanek, trogers
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-06-07 22:15:30 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Mike Millson 2016-09-12 20:24:08 UTC
Environment
-Red Hat Enterprise Linux (RHEL) 6.6
- OpenJDK 1.7.0_75
- Tomcat 7
- org.apache.coyote.http11.Http11Protocol.COMPRESSION enabled
Issue

The JVM crashes with the following in the fatal error log:

#  SIGSEGV (0xb) at pc=0x0000003103e07cb4, pid=28368, tid=140632258549504
#
# JRE version: OpenJDK Runtime Environment (7.0_75-b13) (build 1.7.0_75-mockbuild_2015_01_08_20_32-b00)
# Java VM: OpenJDK 64-Bit Server VM (24.75-b04 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea 2.5.4
# Distribution: Built on Red Hat Enterprise Linux Server release 6.6 (Santiago) (Thu Jan  8 20:32:29 EST 2015)
# Problematic frame:
# C  [libz.so.1+0x7cb4]  _tr_stored_block+0x144
...

Current thread (0x00007fe748002000):  JavaThread "http-bio-127.4.253.1-8080-exec-1" daemon [_thread_in_native, id=32307, stack(0x00007fe77fc89000,0x00007fe77fd0a000)]
...

Stack: [0x00007fe77fc89000,0x00007fe77fd0a000],  sp=0x00007fe77fd012b0,  free space=480k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [libz.so.1+0x7cb4]  _tr_stored_block+0x144

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  java.util.zip.Deflater.deflateBytes(J[BIII)I+0
j  java.util.zip.Deflater.deflate([BIII)I+84
j  java.util.zip.Deflater.deflate([BII)I+5
J 6744 C2 java.util.zip.DeflaterOutputStream.write([BII)V (88 bytes) @ 0x00007fe788c8bf98 [0x00007fe788c8bca0+0x2f8]
j  java.util.zip.GZIPOutputStream.write([BII)V+4
j  org.apache.coyote.http11.filters.FlushableGZIPOutputStream.flushLastByte()V+23
j  org.apache.coyote.http11.filters.FlushableGZIPOutputStream.flush()V+26
j  org.apache.coyote.http11.filters.GzipOutputFilter.flush()V+32
j  org.apache.coyote.http11.AbstractOutputBuffer.flush()V+92
j  org.apache.coyote.http11.InternalOutputBuffer.flush()V+1
j  org.apache.coyote.http11.AbstractHttp11Processor.action(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V+130
j  org.apache.coyote.Response.action(Lorg/apache/coyote/ActionCode;Ljava/lang/Object;)V+31
j  org.apache.catalina.connector.OutputBuffer.doFlush(Z)V+97
j  org.apache.catalina.connector.OutputBuffer.flush()V+2
j  org.apache.catalina.connector.CoyoteWriter.flush()V+12
...

Comment 3 Travis Rogers 2016-09-12 22:44:32 UTC
java-1.7.0-openjdk-1.7.0.85-2.6.1.3.el6_6.x86_64.rpm  Looks to be the latest OpenJDK7 version available for RHEL6.6.

https://access.redhat.com/downloads/content/java-1.7.0-openjdk/1.7.0.85-2.6.1.3.el6_6/x86_64/fd431d51/package

Comment 4 Travis Rogers 2016-09-12 22:53:48 UTC
Looks similar to https://bugs.openjdk.java.net/browse/JDK-8028216.

Comment 9 Andrew John Hughes 2016-09-13 17:18:18 UTC
The latest version is:

java-1.7.0-openjdk-1.7.0.111-2.6.7.2.el6_8

The reported version was released on 2015-01-21, making it four months short of being two years old. Even if we could reproduce and fix this issue, any patch would be against the new version, not this unsupported one.

As is, without a reproducer, my suggestions would be:

1. Try running with -Dsun.zip.disableMemoryMapping=true to see if that makes any difference.
2. As this is a crash in the native zlib library, update to the latest version of that.
3. Update to the latest version of OpenJDK listed above.

https://bugs.openjdk.java.net/browse/JDK-8028216 does look similar and Oracle were equally unable to reproduce this.

Comment 11 Chris Williams 2017-06-07 22:15:30 UTC
Red Hat Enterprise Linux 6 transitioned to the Production 3 Phase on May 10, 2017.  During the Production 3 Phase, Critical impact Security Advisories (RHSAs) and selected Urgent Priority Bug Fix Advisories (RHBAs) may be released as they become available.

The official life cycle policy can be reviewed here:

http://redhat.com/rhel/lifecycle

This issue does not appear to meet the inclusion criteria for the Production Phase 3 and will be marked as CLOSED/WONTFIX. If this remains a critical requirement, please contact Red Hat Customer Support to request a re-evaluation of the issue, citing a clear business justification.  Red Hat Customer Support can be contacted via the Red Hat Customer Portal at the following URL:

https://access.redhat.com