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

Yonik Seeley commented on SOLR-1632:
------------------------------------

Was looking into this a little offline with Mark, who noticed that some queries 
were not being rewritten, and would thus throw an exception during weighting.

It looks like the issue is this: rewrite() doesn't work for function queries 
(there is no propagation mechanism to go through value sources).  This is a 
problem when real queries are embedded in function queries.

Solr Function queries do have a mechanism to weight (via 
ValueSource.createWeight()).
QueryValueSource does "Weight w = q.weight(searcher);" and that implementation 
of weight
calls   "Query query = searcher.rewrite(this);"

This patch calls rewrite explicitly (which does nothing for embedded queries), 
and then when using the DFSource implementation of searcher, rewrite does 
nothing, and hence the embedded query is never rewritten and the subsequent 
createWeight() throws an exception.


> Distributed IDF
> ---------------
>
>                 Key: SOLR-1632
>                 URL: https://issues.apache.org/jira/browse/SOLR-1632
>             Project: Solr
>          Issue Type: New Feature
>          Components: search
>    Affects Versions: 1.5
>            Reporter: Andrzej Bialecki 
>         Attachments: distrib-2.patch, distrib.patch
>
>
> Distributed IDF is a valuable enhancement for distributed search across 
> non-uniform shards. This issue tracks the proposed implementation of an API 
> to support this functionality in Solr.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to