[ 
https://issues.apache.org/jira/browse/SOLR-737?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12626620#action_12626620
 ] 

Erik Hatcher commented on SOLR-737:
-----------------------------------

Andrew - for one, you can increase the boolean clause limit (at the risk of a 
less performant query).  In solrconfig, adjust this: 
<maxBooleanClauses>1024</maxBooleanClauses>

Also, there are many tricks that can be played to make wildcard querying more 
efficient if you are willing to sacrifice index size and manage index analyzer 
and query analyzer carefully.  Have a look this topic in the [EMAIL PROTECTED] 
archives.  I did a lot of work once upon a time for a client that involved term 
rotation during indexing and then morphing wildcard queries to have maximal 
prefix for best efficiency.

As a thought experiment - consider what you'd do if you had to satisfy a 
patrons request for "find me all books matching r*a* in the title" using a card 
catalog system!   :)

> Incorrect 500 error reported with maxClausCount limit
> -----------------------------------------------------
>
>                 Key: SOLR-737
>                 URL: https://issues.apache.org/jira/browse/SOLR-737
>             Project: Solr
>          Issue Type: Improvement
>    Affects Versions: 1.3
>            Reporter: Andrew Nagy
>            Priority: Minor
>             Fix For: 1.4
>
>
> Here is my installation:
> Solr Specification Version: 1.2.2008.08.13.13.05.16
> Lucene Implementation Version: 2.4-dev 685576 - 2008-08-13 10:55:25
> I did the following query today:
> author:(r*a* AND fisher)
> And get the following 500 error:
> maxClauseCount is set to 1024
> org.apache.lucene.search.BooleanQuery$TooManyClauses: maxClauseCount is set 
> to 1024
>         at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:165)
>         at org.apache.lucene.search.BooleanQuery.add(BooleanQuery.java:156)
>         at 
> org.apache.lucene.search.MultiTermQuery.rewrite(MultiTermQuery.java:63)
>         at 
> org.apache.lucene.search.WildcardQuery.rewrite(WildcardQuery.java:54)
>         at 
> org.apache.lucene.search.BooleanQuery.rewrite(BooleanQuery.java:385)
>         at 
> org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:163)
>         at org.apache.lucene.search.Query.weight(Query.java:94)
>         at org.apache.lucene.search.Searcher.createWeight(Searcher.java:175)
>         at org.apache.lucene.search.Searcher.search(Searcher.java:126)
>         at org.apache.lucene.search.Searcher.search(Searcher.java:105)
>         at 
> org.apache.solr.search.SolrIndexSearcher.getDocListNC(SolrIndexSearcher.java:966)
>         at 
> org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:838)
>         at 
> org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:269)
>         at 
> org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:160)
>         at 
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:167)
>         at 
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
>         at org.apache.solr.core.SolrCore.execute(SolrCore.java:1156)
>         at 
> org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:341)
>         at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:272)
>         at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
>         at 
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
>         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:729)
>         at 
> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
>         at 
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
>         at 
> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
>         at 
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>         at org.mortbay.jetty.Server.handle(Server.java:324)
>         at 
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
>         at 
> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
>         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513)
>         at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
>         at 
> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
>         at 
> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to