lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "paul.elschot (JIRA)" <j...@apache.org>
Subject [jira] Commented: (LUCENE-538) Using WildcardQuery with MultiSearcher, and Boolean MUST_NOT clause
Date Tue, 04 Apr 2006 20:54:43 GMT
    [ http://issues.apache.org/jira/browse/LUCENE-538?page=comments#action_12373180 ] 

paul.elschot commented on LUCENE-538:
-------------------------------------

With this code in doSearch():

		System.err.println("Executing query: "+overallQuery);
		Query qrw = overallQuery.rewrite(reader);
		System.err.println("rewritten      : "+qrw);
		Hits results = searcher.search(qrw);

the test passes.

During searcher.search(), the query is once more rewritten, under the covers.
I don't know why rewriting the overallQuery twice does not work, this may
be a bug.

Anyway, there should be no need to rewrite it explicitly.

For convenience, I put the test in package org.apache.lucene.search,
so I could run the  test by:
ant -Dtestcase=TestMultiSearchWildCard test

Regards,
Paul Elschot


> Using WildcardQuery with MultiSearcher, and Boolean MUST_NOT clause
> -------------------------------------------------------------------
>
>          Key: LUCENE-538
>          URL: http://issues.apache.org/jira/browse/LUCENE-538
>      Project: Lucene - Java
>         Type: Bug

>   Components: Search
>     Versions: 1.9
>  Environment: Ubuntu Linux, java version 1.5.0_04
>     Reporter: Helen Warren
>  Attachments: TestMultiSearchWildCard.java
>
> We are searching across multiple indices using a MultiSearcher. There seems to be a problem
when we use a WildcardQuery to exclude documents from the result set. I attach a set of unit
tests illustrating the problem.
> In these tests, we have two indices. Each index contains a set of documents with fields
for 'title',  'section' and 'index'. The final aim is to do a keyword search, across both
indices, on the title field and be able to exclude documents from certain sections (and their
subsections) using a
> WildcardQuery on the section field.
>  
>  e.g. return documents from both indices which have the string 'xyzpqr' in their title
but which do not lie
>  in the news section or its subsections (section = /news/*).
>  
> The first unit test (testExcludeSectionsWildCard) fails trying to do this.
>  If we relax any of the constraints made above, tests pass:
>  
> * Don't use WildcardQuery, but pass in the news section and it's child section to exclude
explicitly (testExcludeSectionsExplicit)</li>
> * Exclude results from just one section, not it's children too i.e. don't use WildcardQuery(testExcludeSingleSection)</li>
> * Do use WildcardQuery, and exclude a section and its children, but just use one index
thereby using the simple
>    IndexReader and IndexSearcher objects (testExcludeSectionsOneIndex).
> * Try the boolean MUST clause rather than MUST_NOT using the WildcardQuery i.e. only
include results from the /news/ section
>    and its children.

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


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


Mime
View raw message