https://issues.apache.org/bugzilla/show_bug.cgi?id=56725

            Bug ID: 56725
           Summary: Socket write error when streaming large file
           Product: Tomcat 8
           Version: 8.0.9
          Hardware: PC
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Util
          Assignee: dev@tomcat.apache.org
          Reporter: mardkra...@hotmail.com

When streaming a large file a ScoketException is thrown in an embedded server.
Likely source of issue: tomcat-embed-core-8.0.9

Using an embedded server to send/stream files to another embedded server works
correctly until the file is large (we used byte[8192]) and then the following
exception is thrown on the sending server:
java.net.SocketException: Connection reset by peer: socket write error
    at java.net.SocketOutputStream.socketWrite0(Native Method)
    at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:113)
    at java.net.SocketOutputStream.write(SocketOutputStream.java:159)
    at
org.apache.http.impl.io.AbstractSessionOutputBuffer.write(AbstractSessionOutputBuffer.java:181)
    at
org.apache.http.impl.io.ContentLengthOutputStream.write(ContentLengthOutputStream.java:115)
    at org.apache.http.entity.ByteArrayEntity.writeTo(ByteArrayEntity.java:112)
    at
org.apache.http.entity.HttpEntityWrapper.writeTo(HttpEntityWrapper.java:89)
    at
org.apache.http.impl.client.EntityEnclosingRequestWrapper$EntityWrapper.writeTo(EntityEnclosingRequestWrapper.java:108)
    at
org.apache.http.impl.entity.EntitySerializer.serialize(EntitySerializer.java:117)
    at
org.apache.http.impl.AbstractHttpClientConnection.sendRequestEntity(AbstractHttpClientConnection.java:265)
    at
org.apache.http.impl.conn.ManagedClientConnectionImpl.sendRequestEntity(ManagedClientConnectionImpl.java:203)
    at
org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:236)
    at
org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:121)
    at
org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:685)
    at
org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:487)
    at
org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863)
    at
org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
    at
org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57)

Nothing appears in the logs on the receiving server.

The same test works with older 8.0.* releases (e.g. tomcat-embed-core-8.0.8),
however when we updated to 8.0.9 we started seeing this exception.  We tried
using tomcat-catalina-8.0.9 with the tomcat-embed-core-8.0.8 and it seemed to
work as expected so it lead us to believe it was on issue with
tomcat-embed-core-8.0.9.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to