You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Steve Rowe (JIRA)" <ji...@apache.org> on 2015/08/08 16:56:45 UTC

[jira] [Reopened] (SOLR-7219) Access filter cache from lucene query syntax

     [ https://issues.apache.org/jira/browse/SOLR-7219?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steve Rowe reopened SOLR-7219:
------------------------------

Frequent 5.x failures (nearly 100%?), e.g. [https://builds.apache.org/job/Lucene-Solr-Tests-5.x-Java7/3405/]:

{noformat}
   [junit4]   2> NOTE: reproduce with: ant test  -Dtestcase=TestSolrQueryParser -Dtests.method=testFilter -Dtests.seed=60D190157DF25DD1 -Dtests.multiplier=2 -Dtests.slow=true -Dtests.locale=no_NO -Dtests.timezone=Atlantic/Canary -Dtests.asserts=true -Dtests.file.encoding=US-ASCII
   [junit4] ERROR   0.02s J2 | TestSolrQueryParser.testFilter <<<
   [junit4]    > Throwable #1: java.lang.UnsupportedOperationException: Query SortedIntDocSetTopFilter does not implement createWeight
   [junit4]    > 	at __randomizedtesting.SeedInfo.seed([60D190157DF25DD1:A803F583E2FB7A8B]:0)
   [junit4]    > 	at org.apache.lucene.search.Query.createWeight(Query.java:79)
   [junit4]    > 	at org.apache.lucene.search.IndexSearcher.createWeight(IndexSearcher.java:855)
   [junit4]    > 	at org.apache.lucene.search.ConstantScoreQuery.createWeight(ConstantScoreQuery.java:117)
   [junit4]    > 	at org.apache.solr.query.FilterQuery.createWeight(FilterQuery.java:96)
   [junit4]    > 	at org.apache.lucene.search.IndexSearcher.createWeight(IndexSearcher.java:855)
   [junit4]    > 	at org.apache.lucene.search.BooleanWeight.<init>(BooleanWeight.java:56)
   [junit4]    > 	at org.apache.lucene.search.BooleanQuery.createWeight(BooleanQuery.java:203)
   [junit4]    > 	at org.apache.lucene.search.IndexSearcher.createWeight(IndexSearcher.java:855)
   [junit4]    > 	at org.apache.lucene.search.IndexSearcher.createNormalizedWeight(IndexSearcher.java:838)
   [junit4]    > 	at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:486)
   [junit4]    > 	at org.apache.solr.search.SolrIndexSearcher.getDocSetNC(SolrIndexSearcher.java:1259)
   [junit4]    > 	at org.apache.solr.search.SolrIndexSearcher.getPositiveDocSet(SolrIndexSearcher.java:941)
   [junit4]    > 	at org.apache.solr.search.SolrIndexSearcher.getProcessedFilter(SolrIndexSearcher.java:1103)
   [junit4]    > 	at org.apache.solr.search.SolrIndexSearcher.getDocListNC(SolrIndexSearcher.java:1625)
   [junit4]    > 	at org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1501)
   [junit4]    > 	at org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:555)
   [junit4]    > 	at org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:522)
   [junit4]    > 	at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:277)
   [junit4]    > 	at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:143)
   [junit4]    > 	at org.apache.solr.core.SolrCore.execute(SolrCore.java:2068)
   [junit4]    > 	at org.apache.solr.util.TestHarness.query(TestHarness.java:320)
   [junit4]    > 	at org.apache.solr.util.TestHarness.query(TestHarness.java:302)
   [junit4]    > 	at org.apache.solr.SolrTestCaseJ4.assertJQ(SolrTestCaseJ4.java:831)
   [junit4]    > 	at org.apache.solr.SolrTestCaseJ4.assertJQ(SolrTestCaseJ4.java:800)
   [junit4]    > 	at org.apache.solr.search.TestSolrQueryParser.testFilter(TestSolrQueryParser.java:224)
   [junit4]    > 	at java.lang.Thread.run(Thread.java:745)
{noformat}

> Access filter cache from lucene query syntax
> --------------------------------------------
>
>                 Key: SOLR-7219
>                 URL: https://issues.apache.org/jira/browse/SOLR-7219
>             Project: Solr
>          Issue Type: New Feature
>            Reporter: Yonik Seeley
>            Assignee: Yonik Seeley
>             Fix For: 5.4
>
>         Attachments: SOLR-7219.patch
>
>
> A filter query retrieves a set of documents matching a query from the filter cache. Since scores are not cached, all documents that match the filter produce the same score. Cached filters will be extremely fast when they are used again in another query.
> Filter Query Example:
> {code}
> description:HDTV OR filter(+promotion:tv +promotion_date:[NOW/DAY-7DAYS TO NOW/DAY+1DAY])
> {code}
> The power of the filter() syntax is that it may be used anywhere within a lucene/solr query syntax. Normal fq support is limited to top-level conjunctions. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org