You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@lucene.apache.org by Otis Gospodnetic <ot...@yahoo.com> on 2003/05/01 02:39:21 UTC
Re: Bug in TestPhrasePrefixQuery in 2003.04.21 Build?
Hello,
Yes, that is a bug. Good eyes! The fix is coming.
Otis
--- David Medinets <me...@mtolive.com> wrote:
> The TestPhrasePrefixQuery looks like it is searching for "blueberry
> pi*" and it even seems to work at first glance. However, the test
> data is not extensive enough to show what is really happening.
>
> The searching technique implemented in TestPhrasePrefixQuery will
> find not only "blueberry pie" but also "blueberry strudel" if both
> exist in the documents.
>
> The reason is that the IndexReader.terms(Term termToMatch) method
> looks for the first term equal or larger than termToMatch and then
> returns *all* terms from that point in the index to the end.
>
> One potential solution might be something like the following:
> String pattern = "pi*";
> TermEnum te = ir.terms(new Term("body", pattern));
> while (te.term().text().matches(pattern)) {
> termsWithPrefix.add(te.term());
> if (te.next() == false)
> break;
> }
> }
>
> Of course, the code above only works with JDK1.4 because of the
> pattern matching.
>
> Comments?
>
> David Medinets
> Quality = Resource Multiplication
> http://www.codebits.com
>
>
__________________________________
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo.
http://search.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: lucene-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: lucene-user-help@jakarta.apache.org