Erick
Thanks - My batch size was 30 and thread size also 30.
Thanks

On 8/17/16, 3:48 PM, "Erick Erickson" <erickerick...@gmail.com> wrote:

>What this probably indicates is that the size of the packets you send
>to Solr is large enough that it exceeds the transport protocol's
>limit. This is reinforced by your statement that reducing the batch
>size fixes the problem even though it increases indexing time.
>
>So the place I'd be looking is the jetty configurations for any limits
>there.
>
>That said, what is your batch size? In my testing I pretty quickly get
>into diminishing returns, here's a writeup from some time ago:
>https://lucidworks.com/blog/2015/10/05/really-batch-updates-solr-2/
>
>Best,
>Erick
>
>On Wed, Aug 17, 2016 at 12:03 PM, Jaspal Sawhney <jsawh...@sapient.com>
>wrote:
>> Bump !
>>
>> On 8/16/16, 10:53 PM, "Jaspal Sawhney" <jsawh...@sapient.com> wrote:
>>
>>>Hello
>>>We are running solr 4.6 in master-slave configuration where in our
>>>master
>>>is used entirely for indexing. No search traffic comes to master ever.
>>>Off late we have started to get the early EOF error on the solr Master
>>>which results in a Broken Pipe error on the commerce application from
>>>where Indexing was kicked off from.
>>>
>>>Things to mention
>>>
>>>  1.  We have a couple of sites ­ each of which has the same document
>>>size but diff document count.
>>>  2.  This error is being observed in the site which has the most number
>>>of document count I.e. 2204743
>>>  3.  The way I have understood solr to work is that irrespective of
>>>number of document ­ the throughput is controlled by the ŒNumber of
>>>Threads¹ and ŒBatch size¹ - Am I correct?
>>>     *   In our case we have not touched the batch size and Number of
>>>Threads when this error started coming
>>>     *   However when I do touch these parameters (specifically reduce
>>>them) the error does not come ­ however indexing time increases a lot.
>>>  4.  We have to index overnight daily because we put product prices in
>>>the Index which get updated nightly
>>>  5.  Solr master is running with a 20 GB Heap
>>>
>>>What we have tried
>>>
>>>  1.  I disabled autoCommit (I.e. Hard commit) and put the
>>>autoSoftCommit
>>>as 5 mins
>>>     *   I realized afterwards that this was a wrong test because my
>>>understanding of soft commit was incorrect, My understanding now is that
>>>hard commit just truncate the Tlog do hardCommit should be better
>>>indexing performance.
>>>     *   This test failed for lack of space reason however because
>>>disable autoCommit did not make sense ­ I did not retry this test yet.
>>>  2.  Increased the RAMBufferSizeMB from 100MB to 1000MB
>>>     *   This test did not yield anything favorable ­ the master gave
>>>the
>>>early EOF exception
>>>  3.  Increased the merge factor from 20 ‹> 100
>>>     *   This test did not yield anything favorable ­ the master gave
>>>the
>>>early EOF exception
>>>  4.  Flipped the autoCommit to 15 secs and disabled auto commit
>>>     *   This test did not yield anything favorable ­ the master gave
>>>the
>>>early EOF exception
>>>     *   I got the input for this from
>>>https://lucidworks.com/blog/2013/08/23/understanding-transaction-logs-so
>>>ft
>>>commit-and-commit-in-sorlcloud/ - Heavy (Bulk) Indexing section
>>>  5.  Tried to bypass transaction log all together ­ This test is
>>>underway currently
>>>
>>>Questions
>>>
>>>  1.  Since we are not using solrCloud ­ I want to understand the impact
>>>of bypassing transaction log
>>>  2.  How does solr take documents which are sent to it to storage as in
>>>what is the journey of a document from segment to tlog to storage.
>>>
>>>It would be great If there are any pointers which you can share.
>>>
>>>Thanks
>>>J./
>>>
>>>The actual Error Log
>>>ERROR - 2016-08-16 22:59:55.988; org.apache.solr.common.SolrException;
>>>org.apache.solr.common.SolrException: early EOF
>>>        at
>>>org.apache.solr.handler.loader.XMLLoader.load(XMLLoader.java:176)
>>>        at
>>>org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler
>>>.j
>>>ava:92)
>>>        at
>>>org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(Conte
>>>nt
>>>StreamHandlerBase.java:74)
>>>        at
>>>org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerB
>>>as
>>>e.java:135)
>>>        at org.apache.solr.core.SolrCore.execute(SolrCore.java:1859)
>>>        at
>>>org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.ja
>>>va
>>>:721)
>>>        at
>>>org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.j
>>>av
>>>a:417)
>>>        at
>>>org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.j
>>>av
>>>a:201)
>>>        at
>>>org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHan
>>>dl
>>>er.java:1419)
>>>        at
>>>org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:45
>>>5)
>>>        at
>>>org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java
>>>:1
>>>37)
>>>        at
>>>org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:5
>>>57
>>>)
>>>        at
>>>org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.
>>>ja
>>>va:231)
>>>        at
>>>org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.
>>>ja
>>>va:1075)
>>>        at
>>>org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384
>>>)
>>>        at
>>>org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.j
>>>av
>>>a:193)
>>>        at
>>>org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.j
>>>av
>>>a:1009)
>>>        at
>>>org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java
>>>:1
>>>35)
>>>        at
>>>org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(Context
>>>Ha
>>>ndlerCollection.java:255)
>>>        at
>>>org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollect
>>>io
>>>n.java:154)
>>>        at
>>>org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.ja
>>>va
>>>:116)
>>>        at org.eclipse.jetty.server.Server.handle(Server.java:368)
>>>        at
>>>org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHt
>>>tp
>>>Connection.java:489)
>>>        at
>>>org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHt
>>>tp
>>>Connection.java:53)
>>>        at
>>>org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConn
>>>ec
>>>tion.java:953)
>>>        at
>>>org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(A
>>>bs
>>>tractHttpConnection.java:1014)
>>>        at
>>>org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:953)
>>>        at
>>>org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
>>>        at
>>>org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConne
>>>ct
>>>ion.java:72)
>>>        at
>>>org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(Socke
>>>tC
>>>onnector.java:264)
>>>        at
>>>org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.j
>>>av
>>>a:608)
>>>        at
>>>org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.ja
>>>va
>>>:543)
>>>        at java.lang.Thread.run(Thread.java:745)
>>>Caused by: com.ctc.wstx.exc.WstxIOException: early EOF
>>>        at
>>>com.ctc.wstx.sr.StreamScanner.throwFromIOE(StreamScanner.java:708)
>>>        at
>>>com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1086)
>>>        at
>>>org.apache.solr.handler.loader.XMLLoader.readDoc(XMLLoader.java:389)
>>>        at
>>>org.apache.solr.handler.loader.XMLLoader.processUpdate(XMLLoader.java:24
>>>6)
>>>        at
>>>org.apache.solr.handler.loader.XMLLoader.load(XMLLoader.java:174)
>>>        ... 32 more
>>>Caused by: org.eclipse.jetty.io.EofException: early EOF
>>>        at org.eclipse.jetty.server.HttpInput.read(HttpInput.java:65)
>>>        at java.io.InputStream.read(InputStream.java:101)
>>>        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.MergedReader.read(MergedReader.java:101)
>>>        at com.ctc.wstx.io.ReaderSource.readInto(ReaderSource.java:84)
>>>        at
>>>com.ctc.wstx.io.BranchingReaderSource.readInto(BranchingReaderSource.jav
>>>a:
>>>57)
>>>        at
>>>com.ctc.wstx.sr.StreamScanner.loadMoreFromCurrent(StreamScanner.java:104
>>>6)
>>>        at
>>>com.ctc.wstx.sr.StreamScanner.parseLocalName2(StreamScanner.java:1796)
>>>        at
>>>com.ctc.wstx.sr.StreamScanner.parseLocalName(StreamScanner.java:1756)
>>>        at
>>>com.ctc.wstx.sr.BasicStreamReader.handleNsAttrs(BasicStreamReader.java:2
>>>98
>>>1)
>>>        at
>>>com.ctc.wstx.sr.BasicStreamReader.handleStartElem(BasicStreamReader.java
>>>:2
>>>936)
>>>        at
>>>com.ctc.wstx.sr.BasicStreamReader.nextFromTree(BasicStreamReader.java:28
>>>48
>>>)
>>>        at
>>>com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1019)
>>>        ... 35 more
>>>
>>

Reply via email to