Hi Manuel, What version / JVM you are running on? I have never run into such issues but there are a number of reported problems with ZIP streams in the bug tracker. It seems like [1] or [2] may bring some light but without a reproducible (even sporadically) test case it is difficult to diagnose the issue.
[1] https://bugs.openjdk.java.net/browse/JDK-8060193 [2] https://bugs.openjdk.java.net/browse/JDK-8193682 Best Regards, Andriy Redko SM> Hi everyone, SM> we found that cxf threads get sometimes stuck. The thread stuck in the Deflater. I think the problem occurs while sending a compressed response. The problem occurs only sporadically and we were not able to reproduce it in dev environment. Any ideas on this? Please find the thread dump below. SM> Thanks in advance & SM> Best regards, SM> Manuel SM> "https-jsse-nio-8041-exec-13" #339 daemon prio=5 os_prio=0 cpu=469168710.00 [reset 469168710.00] ms elapsed=505793.70 [reset 505793.70] s allocated=366964888 B (349.96 MB) [reset 366964888 B (349.96 MB)] defined_classes=75 SM> io= file i/o: 255736/10246 B, net i/o: 1819088/1510377 B, files opened:0, socks opened:12 [reset file i/o: 255736/10246 B, net i/o: 1819088/1510377 B, files opened:0, socks opened:12 ] SM> tid=0x00007f753c763000 nid=0x1adee / 110062 pthread-id=140139729127168 runnable [_thread_blocked (_at_safepoint), stack(0x00007f74d2b60000,0x00007f74d2c61000)] [0x00007f74d2c5d000] SM> java.lang.Thread.State: RUNNABLE SM> at java.util.zip.Deflater.deflateBytes(J[BIII)I(Native Method) SM> at java.util.zip.Deflater.deflate([BIII)I(Deflater.java:508) SM> - locked <0x0000000776701a50> (a java.util.zip.ZStreamRef) SM> at java.util.zip.Deflater.deflate([BII)I(Deflater.java:390) SM> at java.util.zip.DeflaterOutputStream.deflate()V(DeflaterOutputStream.java:251) SM> at java.util.zip.DeflaterOutputStream.write([BII)V(DeflaterOutputStream.java:211) SM> at java.util.zip.GZIPOutputStream.write([BII)V(GZIPOutputStream.java:145) SM> - locked <0x0000000776715a00> (a java.util.zip.GZIPOutputStream) SM> at org.apache.cxf.io.AbstractWrappedOutputStream.write([BII)V(AbstractWrappedOutputStream.java:51) SM> at org.apache.cxf.io.AbstractThresholdOutputStream.write([BII)V(AbstractThresholdOutputStream.java:69) SM> at org.apache.cxf.io.AbstractWrappedOutputStream.write([BII)V(AbstractWrappedOutputStream.java:51) SM> at org.apache.cxf.io.AbstractThresholdOutputStream.unBuffer()V(AbstractThresholdOutputStream.java:89) SM> at org.apache.cxf.io.AbstractThresholdOutputStream.close()V(AbstractThresholdOutputStream.java:100) SM> at org.apache.cxf.transport.AbstractConduit.close(Lorg/apache/cxf/message/Message;)V(AbstractConduit.java:56) SM> at org.apache.cxf.transport.http.AbstractHTTPDestination$BackChannelConduit.close(Lorg/apache/cxf/message/Message;)V(AbstractHTTPDestination.java:758) SM> at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(Lorg/apache/cxf/message/Message;)V(MessageSenderInterceptor.java:62) SM> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(Lorg/apache/cxf/message/Message;)Z(PhaseInterceptorChain.java:308) SM> - locked <0x00000007756e5e90> (a org.apache.cxf.phase.PhaseInterceptorChain) SM> at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(Lorg/apache/cxf/message/Message;)V(AbstractFaultChainInitiatorObserver.java:112) SM> at org.apache.cxf.phase.PhaseInterceptorChain.wrapExceptionAsFault(Lorg/apache/cxf/message/Message;Ljava/lang/RuntimeException;)V(PhaseInterceptorChain.java:366) SM> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(Lorg/apache/cxf/message/Message;)Z(PhaseInterceptorChain.java:324) SM> - locked <0x00000007756e5ec8> (a org.apache.cxf.phase.PhaseInterceptorChain) SM> at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(Lorg/apache/cxf/message/Message;)V(OutgoingChainInterceptor.java:83) SM> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(Lorg/apache/cxf/message/Message;)Z(PhaseInterceptorChain.java:308) SM> - locked <0x00000007732a51a8> (a org.apache.cxf.phase.PhaseInterceptorChain) SM> at org.apache.cxf.transport.ChainInitiationObserver.onMessage(Lorg/apache/cxf/message/Message;)V(ChainInitiationObserver.java:121) SM> at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(Ljavax/servlet/ServletConfig;Ljavax/servlet/ServletContext;Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AbstractHTTPDestination.java:267) SM> at org.apache.cxf.transport.servlet.ServletController.invokeDestination(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Lorg/apache/cxf/transport/http/AbstractHTTPDestination;)V(ServletController.java:234) SM> at org.apache.cxf.transport.servlet.ServletController.invoke(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;Z)Z(ServletController.java:208) SM> at org.apache.cxf.transport.servlet.ServletController.invoke(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(ServletController.java:160) SM> at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(CXFNonSpringServlet.java:189) SM> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AbstractHTTPServlet.java:303) SM> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(AbstractHTTPServlet.java:222) SM> at javax.servlet.http.HttpServlet.service(Ljavax/servlet/http/HttpServletRequest;Ljavax/servlet/http/HttpServletResponse;)V(HttpServlet.java:707) SM> at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(AbstractHTTPServlet.java:278) SM> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ApplicationFilterChain.java:231) SM> at org.apache.catalina.core.ApplicationFilterChain.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ApplicationFilterChain.java:166) SM> at org.apache.tomcat.websocket.server.WsFilter.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;Ljavax/servlet/FilterChain;)V(WsFilter.java:52) SM> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ApplicationFilterChain.java:193) SM> at org.apache.catalina.core.ApplicationFilterChain.doFilter(Ljavax/servlet/ServletRequest;Ljavax/servlet/ServletResponse;)V(ApplicationFilterChain.java:166)
