[prev in list] [next in list] [prev in thread] [next in thread] 

List:       solr-user
Subject:    Re: solr stuck in writing to inexisting sockets
From:       Erick Erickson <erickerickson () gmail ! com>
Date:       2010-10-31 1:29:11
Message-ID: AANLkTikqaD-hLm6HPiKCXc21z+3tGxMq6bdp1_C1jLbV () mail ! gmail ! com
[Download RAW message or body]


Are you saying that your Solr server is at times taking 5 minutes to
complete? If so,
I'd get to the bottom of that first off. My first guess would be you're
either hitting
memory issues and swapping horribly or..well, that would be my first guess.

Best
Erick

On Thu, Oct 28, 2010 at 5:23 AM, Roxana Angheluta <anghelutar@yahoo.com>wrote:

> Hi all,
>
> We are using Solr over Jetty with a large index, sharded and distributed
> over multiple machines. Our queries are quite long, involving boolean and
> proximity operators. We cut the connection at the client side after 5
> minutes. Also, we are using parameter timeAllowed to stop executing it on
> the server after a while.
> We quite often run into situations when solr "blocks". The load on the
> server increases and a thread dump on the solr process shows many threads
> like below:
>
>
> "btpool0-49" prio=10 tid=0x00007f73afe1d000 nid=0x3581 runnable
> [0x00000000451a0000]
>   java.lang.Thread.State: RUNNABLE
>        at java.io.PrintWriter.write(PrintWriter.java:362)
>        at org.apache.solr.common.util.XML.escape(XML.java:206)
>        at org.apache.solr.common.util.XML.escapeCharData(XML.java:79)
>        at org.apache.solr.request.XMLWriter.writePrim(XMLWriter.java:832)
>        at org.apache.solr.request.XMLWriter.writeStr(XMLWriter.java:684)
>        at org.apache.solr.request.XMLWriter.writeVal(XMLWriter.java:564)
>        at org.apache.solr.request.XMLWriter.writeDoc(XMLWriter.java:435)
>        at org.apache.solr.request.XMLWriter$2.writeDocs(XMLWriter.java:514)
>        at
> org.apache.solr.request.XMLWriter.writeDocuments(XMLWriter.java:485)
>        at
> org.apache.solr.request.XMLWriter.writeSolrDocumentList(XMLWriter.java:494)
>        at org.apache.solr.request.XMLWriter.writeVal(XMLWriter.java:588)
>        at
> org.apache.solr.request.XMLWriter.writeResponse(XMLWriter.java:130)
>        at
> org.apache.solr.request.XMLResponseWriter.write(XMLResponseWriter.java:34)
>        at
> org.apache.solr.servlet.SolrDispatchFilter.writeResponse(SolrDispatchFilter.java:325)
>        at
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:254)
>        at
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1089)
>        at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)
>        at
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>        at
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>        at
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
> ......................................
>
>
> A netstat on the machine shows sockets in state CLOSE_WAIT. However, they
> are fewer than the number of RUNNABLE threads as the above.
>
> Why is this happening? Is there anything we can do to avoid getting in
> these situations?
>
> Thanks,
> roxana
>
>
>
>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic