Return-Path: Delivered-To: apmail-lucene-solr-user-archive@minotaur.apache.org Received: (qmail 78814 invoked from network); 16 Jun 2009 05:04:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 16 Jun 2009 05:04:10 -0000 Received: (qmail 832 invoked by uid 500); 16 Jun 2009 05:04:20 -0000 Delivered-To: apmail-lucene-solr-user-archive@lucene.apache.org Received: (qmail 745 invoked by uid 500); 16 Jun 2009 05:04:20 -0000 Mailing-List: contact solr-user-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: solr-user@lucene.apache.org Delivered-To: mailing list solr-user@lucene.apache.org Received: (qmail 735 invoked by uid 99); 16 Jun 2009 05:04:20 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 16 Jun 2009 05:04:20 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of noble.paul@gmail.com designates 209.85.216.193 as permitted sender) Received: from [209.85.216.193] (HELO mail-px0-f193.google.com) (209.85.216.193) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 16 Jun 2009 05:04:09 +0000 Received: by pxi31 with SMTP id 31so1453356pxi.29 for ; Mon, 15 Jun 2009 22:03:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:reply-to:received :in-reply-to:references:from:date:x-google-sender-auth:message-id :subject:to:content-type:content-transfer-encoding; bh=cncd4E7gwn+BhdiG66xQ74g5hU45HbyVZOYTtpBQLU8=; b=fZ8Mqw9yFUHdQx0duYJwKtNkHMudawt5ZYrOVayLbTh4KMaE9cFxUUfP4VIbiMn6w/ 0uC3tTiJaHREYb7o32rAqxQ53aua5h7qH/HGi3D00hwjB0xUeA30HvWAMHkwDJn8XnUN TM/Pof6Gw8kN+ZxU6WP4Ec0HsxhdRYinw3T9M= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:reply-to:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:content-type :content-transfer-encoding; b=wdm5wdt5ABlxnqzuAiwWc3aUWnHjQ44eTZNGeuFyCwgc3V8Zt2EBU4Uc2bI8PCoMAr rhZkNyf/AQLR2S4hFxYCIXoT5w1V/D1N9Nlp2hs1JdZvPJjcyD+penO/wcLYpaNxIFAs tVJ8lXa7i6wInnB/gZwtBBKnOuKvUee2xw2b4= MIME-Version: 1.0 Sender: noble.paul@gmail.com Reply-To: noble.paul@gmail.com Received: by 10.142.185.21 with SMTP id i21mr3772862wff.311.1245128628084; Mon, 15 Jun 2009 22:03:48 -0700 (PDT) In-Reply-To: References: <24040421.post@talk.nabble.com> <24040772.post@talk.nabble.com> From: =?UTF-8?B?Tm9ibGUgUGF1bCDgtKjgtYvgtKzgtL/gtLPgtY3igI0gIOCkqOCli+CkrOCljeCks+CljQ==?= Date: Tue, 16 Jun 2009 10:33:28 +0530 X-Google-Sender-Auth: 773708d15c1d56ee Message-ID: <5e76b0ad0906152203q639dac47m87fdb5cd1de5b516@mail.gmail.com> Subject: Re: LRUCache causing locked threads To: solr-user@lucene.apache.org, yonik@lucidimagination.com Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org the FastLRUCache can be used in 1.3 if it can be compiled and added to the solr.home/lib On Tue, Jun 16, 2009 at 12:40 AM, Yonik Seeley wrote: > On Mon, Jun 15, 2009 at 2:58 PM, CameronL wr= ote: >> Unfortunately upgrading to 1.4 isn't an option for us at the moment. >> >> Since we're stuck using 1.3, is there anything in particular we need to = do >> to prevent these threads from locking (through configuration or somethin= g) > > Not really. > >> or is this sort of expected/unavoidable using 1.3? > > Throughput will be less when faceting with LRUCache, but not a lot > less under reasonable loads. =A0Just because you're seeing threads > blocked on LRUCache doesn't mean it would perform well if it were > lockless. > How many CPU cores do you have on your box, and how many requests > typically execute at the same time? > What's your CPU utilization under load? > Does a single faceting request return in acceptable time when no other > requests are running? > > -Yonik > http://www.lucidimagination.com > > > >> >> Yonik Seeley-2 wrote: >>> >>> Solr 1.4 has a cache implementation that's lockless for gets, and >>> faster for gets. =A0There's a new faceting implementation as well. >>> >>> -Yonik >>> http://www.lucidimagination.com >>> >>> On Mon, Jun 15, 2009 at 2:39 PM, CameronL >>> wrote: >>>> >>>> I've searched through the forums and seen a few similar problems to th= is, >>>> but >>>> nothing that seemed to help much. >>>> >>>> We're running Solr 1.3 on Tomcat 6.0.16 and Java 6. =A0We've been havi= ng >>>> performance problems with our search, causing long query times under >>>> normal >>>> traffic. =A0We've taken a thread dump and have seen many threads locke= d or >>>> waiting for LRUCache (see below). =A0Our cache values are as follows: >>>> >>>> >>> autowarmCount=3D"10000"/> >>>> >>> autowarmCount=3D"5000"/> >>>> >>> autowarmCount=3D"0"/> >>>> >>>> >>>> "http-8983-99" daemon prio=3D10 tid=3D0x0000002beb3f5800 nid=3D0x2fb9 = waiting >>>> for >>>> monitor entry [0x0000000047ea5000..0x0000000047ea6c30] >>>> =A0 java.lang.Thread.State: BLOCKED (on object monitor) >>>> =A0 =A0 =A0 =A0at org.apache.solr.search.LRUCache.get(LRUCache.java:13= 0) >>>> =A0 =A0 =A0 =A0- waiting to lock <0x0000002a9fb94be8> (a >>>> org.apache.solr.search.LRUCache$1) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.search.SolrIndexSearcher.getPositiveDocSet(SolrIndexSe= archer.java:605) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.search.SolrIndexSearcher.numDocs(SolrIndexSearcher.jav= a:1556) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.request.SimpleFacets.getFacetTermEnumCounts(SimpleFace= ts.java:377) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.request.SimpleFacets.getTermCounts(SimpleFacets.java:1= 56) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.request.SimpleFacets.getFacetFieldCounts(SimpleFacets.= java:182) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.request.SimpleFacets.getFacetCounts(SimpleFacets.java:= 96) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.handler.component.FacetComponent.process(FacetComponen= t.java:70) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.handler.component.SearchHandler.handleRequestBody(Sear= chHandler.java:169) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandle= rBase.java:131) >>>> =A0 =A0 =A0 =A0at org.apache.solr.core.SolrCore.execute(SolrCore.java:= 1204) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.= java:303) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter= .java:232) >>>> "http-8983-83" daemon prio=3D10 tid=3D0x0000002bead1a000 nid=3D0x2f76 = waiting >>>> for >>>> monitor entry [0x0000000046e95000..0x0000000046e96c30] >>>> =A0 java.lang.Thread.State: BLOCKED (on object monitor) >>>> =A0 =A0 =A0 =A0at org.apache.solr.search.LRUCache.get(LRUCache.java:13= 0) >>>> =A0 =A0 =A0 =A0- locked <0x0000002a9fb94be8> (a >>>> org.apache.solr.search.LRUCache$1) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.search.SolrIndexSearcher.getPositiveDocSet(SolrIndexSe= archer.java:605) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.search.SolrIndexSearcher.numDocs(SolrIndexSearcher.jav= a:1556) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.request.SimpleFacets.getFacetTermEnumCounts(SimpleFace= ts.java:377) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.request.SimpleFacets.getTermCounts(SimpleFacets.java:1= 56) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.request.SimpleFacets.getFacetFieldCounts(SimpleFacets.= java:182) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.request.SimpleFacets.getFacetCounts(SimpleFacets.java:= 96) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.handler.component.FacetComponent.process(FacetComponen= t.java:70) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.handler.component.SearchHandler.handleRequestBody(Sear= chHandler.java:169) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandle= rBase.java:131) >>>> =A0 =A0 =A0 =A0at org.apache.solr.core.SolrCore.execute(SolrCore.java:= 1204) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.= java:303) >>>> =A0 =A0 =A0 =A0at >>>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter= .java:232) >>>> >>>> Has anyone else experienced this or does anyone have an idea of why th= is >>>> might be happening? >>>> -- >>>> View this message in context: >>>> http://www.nabble.com/LRUCache-causing-locked-threads-tp24040421p24040= 421.html >>>> Sent from the Solr - User mailing list archive at Nabble.com. >>>> >>>> >>> >>> >> >> -- >> View this message in context: http://www.nabble.com/LRUCache-causing-loc= ked-threads-tp24040421p24040772.html >> Sent from the Solr - User mailing list archive at Nabble.com. >> >> > --=20 ----------------------------------------------------- Noble Paul | Principal Engineer| AOL | http://aol.com