-
Bug
-
Resolution: Done
-
Major
-
2.2.25.Final, 2.3.7.Final, 2.2.34.Final, 2.3.16.Final
-
None
This is a follow-up to create a ticket for the reproducer posted here: https://github.com/undertow-io/undertow/pull/1495
This may manifest in several ways:
org.apache.hc.core5.http.ConnectionClosedException: Premature end of chunk coded message body: closing chunk expected
Caused by: org.apache.hc.core5.http.ConnectionClosedException: Premature end of chunk coded message body: closing chunk expected at org.apache.hc.core5.http.impl.io.ChunkedInputStream.getChunkSize(ChunkedInputStream.java:263) at org.apache.hc.core5.http.impl.io.ChunkedInputStream.nextChunk(ChunkedInputStream.java:222) at org.apache.hc.core5.http.impl.io.ChunkedInputStream.read(ChunkedInputStream.java:183) at org.apache.hc.core5.http.io.EofSensorInputStream.read(EofSensorInputStream.java:135) at java.base/java.io.FilterInputStream.read(FilterInputStream.java:132)
org.apache.hc.core5.http.MessageConstraintException: Maximum empty line limit exceeded at org.apache.hc.core5.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:259) at org.apache.hc.core5.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:54) at org.apache.hc.core5.http.impl.io.DefaultBHttpClientConnection.receiveResponseHeader(DefaultBHttpClientConnection.java:299) at com.palantir.dialogue.hc5.InstrumentedManagedHttpClientConnection.receiveResponseHeader(InstrumentedManagedHttpClientConnection.java:95) at org.apache.hc.core5.http.impl.io.HttpRequestExecutor.execute(HttpRequestExecutor.java:175) at org.apache.hc.core5.http.impl.io.HttpRequestExecutor.execute(HttpRequestExecutor.java:218) at org.apache.hc.client5.http.impl.io.PoolingHttpClientConnectionManager$InternalConnectionEndpoint.execute(PoolingHttpClientConnectionManager.java:712
DEBUG [2023-06-20T17:53:27.665476Z] [witchcraft-worker task-17] io.undertow.request.io: UT005013: An IOException occurred java.nio.channels.ClosedChannelException: at io.undertow.channels.DetachableStreamSinkChannel.awaitWritable(DetachableStreamSinkChannel.java:85) at io.undertow.server.HttpServerExchange$WriteDispatchChannel.awaitWritable(HttpServerExchange.java:2139) at org.xnio.channels.Channels.flushBlocking(Channels.java:64) at io.undertow.servlet.spec.ServletOutputStreamImpl.close(ServletOutputStreamImpl.java:641) at io.undertow.servlet.spec.HttpServletResponseImpl.closeStreamAndWriter(HttpServletResponseImpl.java:485) at io.undertow.servlet.spec.HttpServletResponseImpl.responseDone(HttpServletResponseImpl.java:580) at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:335) at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135) at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:132) at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48) at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:256) at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:101) at io.undertow.server.Connectors.executeRootHandler(Connectors.java:393) at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:859)
- is cloned by
-
JBEAP-28301 (7.4.z) UNDERTOW-2424 - Undertow produces malformed Http/1.1 responses under heavy concurrent load
- Verified
- is incorporated by
-
WFCORE-6958 Upgrade Undertow to 2.3.16.Final
- Resolved