I seem frequently getting the following exception in my Solr 4.9 logs,
"org.apache.solr.common.SolrException: Invalid chunk header".  These
exceptions still continue to happen even if I throttle my Solr requests. 
Does anyone have any suggestions on how to address or work-around his issue?

I have tried multiple configurations (Binary vs XML Communication,
HttpSolrServer vs ConcurrentUpdateSolrServer), though when running my test
suite it is only a matter of time before this exception is thrown.

I found two other threads posted here with what looks like similar issues:

*
http://lucene.472066.n3.nabble.com/error-message-in-solr-logs-td3999328.html
*
http://lucene.472066.n3.nabble.com/Unbuffered-entity-enclosing-request-can-not-be-repeated-amp-Invalid-chunk-header-td3225243.html


My Ubuntu 14.04 Tomcat 7.0.52 connector settings (/etc/tomcat7/server.xml)
seem quite lenient.

    <Connector port="8080" protocol="HTTP/1.1"
               acceptCount="2000" connectionTimeout="60000"
               URIEncoding="UTF-8"
               redirectPort="8443" />


==

With:

server.setRequestWriter(new BinaryRequestWriter());
server.setParser(new BinaryResponseParser());

Solr Web Browser Logs:

14/8/2014 4:10:52 pm    ERROR   SolrCore        java.io.IOException: Invalid 
chunk
header

java.io.IOException: Invalid chunk header
        at
org.apache.coyote.http11.filters.ChunkedInputFilter.doRead(ChunkedInputFilter.java:172)
        at
org.apache.coyote.http11.AbstractInputBuffer.doRead(AbstractInputBuffer.java:346)
        at org.apache.coyote.Request.doRead(Request.java:422)
        at
org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:290)
        at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:449)
        at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:315)
        at
org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:200)
        at
org.apache.solr.common.util.FastInputStream.readWrappedStream(FastInputStream.java:80)
        at
org.apache.solr.common.util.FastInputStream.refill(FastInputStream.java:89)
        at
org.apache.solr.common.util.FastInputStream.readByte(FastInputStream.java:192)
        at
org.apache.solr.common.util.JavaBinCodec.unmarshal(JavaBinCodec.java:111)
        at
org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec.unmarshal(JavaBinUpdateRequestCodec.java:173)
        at
org.apache.solr.handler.loader.JavabinLoader.parseAndLoadDocs(JavabinLoader.java:106)
        at 
org.apache.solr.handler.loader.JavabinLoader.load(JavabinLoader.java:58)
        at
org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:92)
        at
org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:74)
        at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
        at org.apache.solr.core.SolrCore.execute(SolrCore.java:1962)
        at
org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:777)
        at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:418)
        at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
        at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
        at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
        at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:744)

14/8/2014 4:10:52 pm    ERROR   SolrDispatchFilter      
null:java.io.IOException:
Invalid chunk header

null:java.io.IOException: Invalid chunk header
        at
org.apache.coyote.http11.filters.ChunkedInputFilter.doRead(ChunkedInputFilter.java:172)
        at
org.apache.coyote.http11.AbstractInputBuffer.doRead(AbstractInputBuffer.java:346)
        at org.apache.coyote.Request.doRead(Request.java:422)
        at
org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:290)
        at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:449)
        at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:315)
        at
org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:200)
        at
org.apache.solr.common.util.FastInputStream.readWrappedStream(FastInputStream.java:80)
        at
org.apache.solr.common.util.FastInputStream.refill(FastInputStream.java:89)
        at
org.apache.solr.common.util.FastInputStream.readByte(FastInputStream.java:192)
        at
org.apache.solr.common.util.JavaBinCodec.unmarshal(JavaBinCodec.java:111)
        at
org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec.unmarshal(JavaBinUpdateRequestCodec.java:173)
        at
org.apache.solr.handler.loader.JavabinLoader.parseAndLoadDocs(JavabinLoader.java:106)
        at 
org.apache.solr.handler.loader.JavabinLoader.load(JavabinLoader.java:58)
        at
org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:92)
        at
org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:74)
        at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
        at org.apache.solr.core.SolrCore.execute(SolrCore.java:1962)
        at
org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:777)
        at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:418)
        at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
        at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
        at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
        at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:744)


==

With:

server.setRequestWriter(new RequestWriter());
server.setParser(new XMLResponseParser());

Solr Web Browser Logs:


14/8/2014 4:17:23 pm    ERROR   SolrCore        
org.apache.solr.common.SolrException:
Invalid chunk header

org.apache.solr.common.SolrException: Invalid chunk header
        at org.apache.solr.handler.loader.XMLLoader.load(XMLLoader.java:176)
        at
org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:92)
        at
org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:74)
        at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
        at org.apache.solr.core.SolrCore.execute(SolrCore.java:1962)
        at
org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:777)
        at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:418)
        at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
        at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
        at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
        at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:744)
Caused by: com.ctc.wstx.exc.WstxIOException: Invalid chunk header
        at 
com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:548)
        at 
com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:604)
        at 
com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:629)
        at
com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:324)
        at org.apache.solr.handler.loader.XMLLoader.load(XMLLoader.java:172)
        ... 22 more
Caused by: java.io.IOException: Invalid chunk header
        at
org.apache.coyote.http11.filters.ChunkedInputFilter.doRead(ChunkedInputFilter.java:172)
        at
org.apache.coyote.http11.AbstractInputBuffer.doRead(AbstractInputBuffer.java:346)
        at org.apache.coyote.Request.doRead(Request.java:422)
        at
org.apache.catalina.connector.InputBuffer.realReadBytes(InputBuffer.java:290)
        at org.apache.tomcat.util.buf.ByteChunk.substract(ByteChunk.java:449)
        at org.apache.catalina.connector.InputBuffer.read(InputBuffer.java:315)
        at
org.apache.catalina.connector.CoyoteInputStream.read(CoyoteInputStream.java:167)
        at com.ctc.wstx.io.UTF8Reader.loadMore(UTF8Reader.java:365)
        at com.ctc.wstx.io.UTF8Reader.read(UTF8Reader.java:110)
        at
com.ctc.wstx.io.ReaderBootstrapper.initialLoad(ReaderBootstrapper.java:245)
        at
com.ctc.wstx.io.ReaderBootstrapper.bootstrapInput(ReaderBootstrapper.java:132)
        at 
com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:543)
        ... 26 more



==






--
View this message in context: 
http://lucene.472066.n3.nabble.com/Ubuntu-14-04-Tomcat-7-0-52-Solr-4-9-org-apache-solr-common-SolrException-Invalid-chunk-header-tp4153064.html
Sent from the Solr - User mailing list archive at Nabble.com.

Reply via email to