java - org.eclipse.jetty.io.EofException: Early EOF thrown while uploading large file -
while uploading large file(about 50 mb), getting org.eclipse.jetty.io.eofexception: eof excception. jetty server version "9.2.9.v20150224".below stack trace
org.eclipse.jetty.io.eofexception: eof @ org.eclipse.jetty.server.httpinput$3.nocontent(httpinput.java:505) ~[jetty-server-9.2.9.v20150224.jar:9.2.9.v20150224] @ org.eclipse.jetty.server.httpinput.read(httpinput.java:124) ~[jetty-server-9.2.9.v20150224.jar:9.2.9.v20150224] @ org.apache.http.entity.inputstreamentity.writeto(inputstreamentity.java:142) ~[httpcore-4.4.1.jar:4.4.1] @ org.apache.http.entity.httpentitywrapper.writeto(httpentitywrapper.java:96) ~[httpcore-4.4.1.jar:4.4.1] @ org.apache.http.impl.client.entityenclosingrequestwrapper$entitywrapper.writeto(entityenclosingrequestwrapper.java:112) ~[httpclient-4.5.jar:4.5] @ org.apache.http.impl.entity.entityserializer.serialize(entityserializer.java:117) ~[httpcore-4.4.1.jar:4.4.1] @ org.apache.http.impl.abstracthttpclientconnection.sendrequestentity(abstracthttpclientconnection.java:265) ~[httpcore-4.4.1.jar:4.4.1] @ org.apache.http.impl.conn.abstractclientconnadapter.sendrequestentity(abstractclientconnadapter.java:231) ~[httpclient-4.5.jar:4.5] @ org.apache.http.protocol.httprequestexecutor.dosendrequest(httprequestexecutor.java:237) ~[httpcore-4.4.1.jar:4.4.1] @ org.apache.http.protocol.httprequestexecutor.execute(httprequestexecutor.java:122) ~[httpcore-4.4.1.jar:4.4.1] @ org.apache.http.impl.client.defaultrequestdirector.tryexecute(defaultrequestdirector.java:685) ~[httpclient-4.5.jar:4.5] @ org.apache.http.impl.client.defaultrequestdirector.execute(defaultrequestdirector.java:487) ~[httpclient-4.5.jar:4.5] @ org.apache.http.impl.client.abstracthttpclient.doexecute(abstracthttpclient.java:882) ~[httpclient-4.5.jar:4.5] @ org.apache.http.impl.client.closeablehttpclient.execute(closeablehttpclient.java:117) ~[httpclient-4.5.jar:4.5] @ org.apache.http.impl.client.closeablehttpclient.execute(closeablehttpclient.java:55) ~[httpclient-4.5.jar:4.5] @ org.apache.http.client.httpclient$execute$2.call(unknown source) ~[na:na] org.eclipse.jetty.io.eofexception @ org.eclipse.jetty.io.channelendpoint.flush(channelendpoint.java:192) @ org.eclipse.jetty.io.writeflusher.flush(writeflusher.java:408) @ org.eclipse.jetty.io.writeflusher.write(writeflusher.java:302) @ org.eclipse.jetty.io.abstractendpoint.write(abstractendpoint.java:129) @ org.eclipse.jetty.server.httpconnection$sendcallback.process(httpconnection.java:676) @ org.eclipse.jetty.util.iteratingcallback.processing(iteratingcallback.java:246) @ org.eclipse.jetty.util.iteratingcallback.iterate(iteratingcallback.java:208) @ org.eclipse.jetty.server.httpconnection.send(httpconnection.java:471) @ org.eclipse.jetty.server.httpchannel.sendresponse(httpchannel.java:763) @ org.eclipse.jetty.server.httpchannel.write(httpchannel.java:801) @ org.eclipse.jetty.server.httpoutput.write(httpoutput.java:142) @ org.eclipse.jetty.server.httpoutput.write(httpoutput.java:135) @ org.eclipse.jetty.server.httpoutput.flush(httpoutput.java:237) @ java_io_flushable$flush.call(unknown source) @ org.codehaus.groovy.runtime.callsite.callsitearray.defaultcall(callsitearray.java:45) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.call(abstractcallsite.java:108) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.call(abstractcallsite.java:112) @ sendresponsefilter.writeresponse(sendresponse.groovy:128) @ sendresponsefilter$writeresponse.callcurrent(unknown source) @ org.codehaus.groovy.runtime.callsite.callsitearray.defaultcallcurrent(callsitearray.java:49) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.callcurrent(abstractcallsite.java:133) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.callcurrent(abstractcallsite.java:145) @ sendresponsefilter.writeresponse(sendresponse.groovy:102) @ sendresponsefilter.run(sendresponse.groovy:59) @ com.netflix.zuul.zuulfilter.runfilter(zuulfilter.java:112) @ com.netflix.zuul.filterprocessor.processzuulfilter(filterprocessor.java:197) @ com.netflix.zuul.filterprocessor.runfilters(filterprocessor.java:161) @ com.netflix.zuul.filterprocessor.postroute(filterprocessor.java:92) @ com.netflix.zuul.zuulrunner.postroute(zuulrunner.java:87) @ com.netflix.zuul.http.zuulservlet.postroute(zuulservlet.java:107) @ com.netflix.zuul.http.zuulservlet.service(zuulservlet.java:88) @ realdoc.spider.spiderservlet.service(spiderservlet.java:66) @ org.eclipse.jetty.servlet.servletholder.handle(servletholder.java:808) @ org.eclipse.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1669) @ com.netflix.zuul.context.contextlifecyclefilter.dofilter(contextlifecyclefilter.java:40) @ org.eclipse.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1652) @ org.eclipse.jetty.servlets.crossoriginfilter.handle(crossoriginfilter.java:259) @ org.eclipse.jetty.servlets.crossoriginfilter.dofilter(crossoriginfilter.java:222) @ org.eclipse.jetty.servlet.servlethandler$cachedchain.dofilter(servlethandler.java:1652) @ org.eclipse.jetty.servlet.servlethandler.dohandle(servlethandler.java:585) @ org.eclipse.jetty.server.handler.scopedhandler.handle(scopedhandler.java:143) @ org.eclipse.jetty.security.securityhandler.handle(securityhandler.java:577) @ org.eclipse.jetty.server.session.sessionhandler.dohandle(sessionhandler.java:223) @ org.eclipse.jetty.server.handler.contexthandler.dohandle(contexthandler.java:1127) @ org.eclipse.jetty.servlet.servlethandler.doscope(servlethandler.java:515) @ org.eclipse.jetty.server.session.sessionhandler.doscope(sessionhandler.java:185) @ org.eclipse.jetty.server.handler.contexthandler.doscope(contexthandler.java:1061) @ org.eclipse.jetty.server.handler.scopedhandler.handle(scopedhandler.java:141) @ org.eclipse.jetty.server.handler.handlerwrapper.handle(handlerwrapper.java:97) @ org.eclipse.jetty.server.server.handle(server.java:497) @ org.eclipse.jetty.server.httpchannel.handle(httpchannel.java:310) @ org.eclipse.jetty.server.httpconnection.onfillable(httpconnection.java:257) @ org.eclipse.jetty.io.abstractconnection$2.run(abstractconnection.java:540) @ org.eclipse.jetty.util.thread.queuedthreadpool.runjob(queuedthreadpool.java:635) @ org.eclipse.jetty.util.thread.queuedthreadpool$3.run(queuedthreadpool.java:555) @ java.lang.thread.run(thread.java:745) caused by: java.io.ioexception: broken pipe @ sun.nio.ch.filedispatcherimpl.writev0(native method) @ sun.nio.ch.socketdispatcher.writev(socketdispatcher.java:51) @ sun.nio.ch.ioutil.write(ioutil.java:148) @ sun.nio.ch.socketchannelimpl.write(socketchannelimpl.java:504) @ org.eclipse.jetty.io.channelendpoint.flush(channelendpoint.java:172) ... 55 more
if have idea on issue, please me out.
these stacktraces show results of connection termination, not reason why terminated.
the java.io.ioexception: broken pipe
means connection terminated, unexpectedly @ os level.
the org.eclipse.jetty.io.eofexception
during org.eclipse.jetty.io.channelendpoint.flush()
means response body content unable finish flushing network connection terminated.
the org.eclipse.jetty.io.eofexception: eof
during org.eclipse.jetty.server.httpinput.read()
means while actively reading request (unclear if body content or headers stacktrace) connection (a java.nio.channels.socketchannel
in case), terminated prematurely, , complete http request not received (headers , body content).
there might other errors in logs either client or server indicate going on.
test request other tooling (like curl) see if client, or network, or jetty. use tool wireshark capture network traffic , see connection termination originated (client or server)
Comments
Post a Comment