[
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]