[undertow-dev] java.io.IOException: Broken pip

Stuart Douglas sdouglas at redhat.com
Mon Apr 14 18:49:28 EDT 2014


In Wildfly it should be:


<http-listener name="default" socket-binding="http" 
max-post-size="someLargeNumber">

I'm not sure why the name in the XML is different to the underlying 
option name.

Stuart

Mike Hostetler wrote:
> I'm using a WildFly 8.0.1 nightly and can easily recreate this error:
>
> 14:01:30,134 ERROR [io.undertow.request] (default task-18) Blocking
> request failed HttpServerExchange{ GET /ottrservices/recentpatients}:
> java.lang.RuntimeException: java.io.IOException: Broken pipe
> at
> io.undertow.servlet.spec.HttpServletResponseImpl.responseDone(HttpServletResponseImpl.java:527)
> at
> io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:287)
> at
> io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:227)
> at
> io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:73)
> at
> io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:146)
> at io.undertow.server.Connectors.executeRootHandler(Connectors.java:168)
> at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:727)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> [rt.jar:1.7.0_51]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> [rt.jar:1.7.0_51]
> at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51]
> Caused by: java.io.IOException: Broken pipe
> at sun.nio.ch.FileDispatcherImpl.write0(Native Method) [rt.jar:1.7.0_51]
> at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
> [rt.jar:1.7.0_51]
> at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93) [rt.jar:1.7.0_51]
> at sun.nio.ch.IOUtil.write(IOUtil.java:51) [rt.jar:1.7.0_51]
> at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:487)
> [rt.jar:1.7.0_51]
> at org.xnio.nio.NioSocketConduit.write(NioSocketConduit.java:150)
> [xnio-nio-3.2.1.Final.jar:3.2.1.Final]
> at
> io.undertow.server.protocol.http.HttpResponseConduit.write(HttpResponseConduit.java:529)
> at
> io.undertow.conduits.ChunkedStreamSinkConduit.flush(ChunkedStreamSinkConduit.java:251)
> at
> org.xnio.conduits.ConduitStreamSinkChannel.flush(ConduitStreamSinkChannel.java:162)
> [xnio-api-3.2.1.Final.jar:3.2.1.Final]
> at
> io.undertow.channels.DetachableStreamSinkChannel.flush(DetachableStreamSinkChannel.java:100)
> at org.xnio.channels.Channels.flushBlocking(Channels.java:63)
> [xnio-api-3.2.1.Final.jar:3.2.1.Final]
> at
> io.undertow.servlet.spec.ServletOutputStreamImpl.close(ServletOutputStreamImpl.java:623)
> at
> io.undertow.servlet.spec.HttpServletResponseImpl.closeStreamAndWriter(HttpServletResponseImpl.java:451)
> at
> io.undertow.servlet.spec.HttpServletResponseImpl.responseDone(HttpServletResponseImpl.java:525)
> ... 9 more
>
>
> For this particular screen, we do send a lot of data back and forth via
> REST requests. Some of it can be large.
>
> I have this setting in my http-listener:
> <http-listener name="default" socket-binding="http"
> max-buffered-request-size="10485760"  max-header-size="7864320"
> allow-equals-in-cookie-value="true"/>
>
> yes I picked those large values just to see if they would work and they
> haven't. I see from this page:
> http://undertow.io/documentation/core/listeners.html
>
> That there is a MAX_ENTITY_SIZE in Undertow but I can't seem to get
> Wildfly to recognize it -- when I try max-entity-size="something" in the
> http-listener tag, I get a validation error.
>
> Any ideas?
>
>
>
> --
> Mike Hostetler
> http://mike.hostetlerhome.com/
>
> _______________________________________________
> undertow-dev mailing list
> undertow-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/undertow-dev


More information about the undertow-dev mailing list