lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael McCandless (JIRA)" <j...@apache.org>
Subject [jira] Updated: (LUCENE-1974) BooleanQuery can not find all matches in special condition
Date Wed, 14 Oct 2009 12:58:31 GMT

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

Michael McCandless updated LUCENE-1974:
---------------------------------------

    Attachment: LUCENE-1974.patch

I've modified TestBoolean2 to show the bug (attached patch), by
building up a larger index from the small test index it normally uses.
I'll commit shortly.

Here are the conditions that tickle the bug:

  * Must be a BooleanQuery, that contains only SHOULD and up to 32
    MUST_NOT clauses (so that BooleanScorer not BooleanScorer2 is
    used).

  * At least one of the clauses must not be a TermQuery.

  * Must be a segment with more than 4096 docs, and, the clause(s)
    that are not TermQuery must all have no matches in a 2048 chunk
    (and must have valid matches after that chunk).  When such a chunk
    is hit, then BooleanScorer stops prematurely.


> BooleanQuery can not find all matches in special condition
> ----------------------------------------------------------
>
>                 Key: LUCENE-1974
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1974
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Query/Scoring
>    Affects Versions: 2.9
>            Reporter: tangfulin
>            Assignee: Michael McCandless
>             Fix For: 2.9.1, 3.0
>
>         Attachments: BooleanQueryTest.java, LUCENE-1974.patch, LUCENE-1974.test.patch,
LUCENE-1974.test.patch
>
>
> query: (name:tang*)
> doc=5137 score=1.0  doc:Document<stored,indexed<name:tangfulin>>
> doc=11377 score=1.0  doc:Document<stored,indexed<name:tangfulin>>
> query: name:tang* name:notexistnames
> doc=5137 score=0.048133932  doc:Document<stored,indexed<name:tangfulin>>
> It is two queries on the same index, one is just a prefix query in a
> boolean query, and the other is a prefix query plus a term query in a
> boolean query, all with Occur.SHOULD .
> what I wonder is why the later query can not find the doc=11377 doc ?
> the problem can be repreduced by the code in the attachment .

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


---------------------------------------------------------------------
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