You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by bu...@apache.org on 2005/01/18 23:22:34 UTC
DO NOT REPLY [Bug 33161] New: -
Combination of BooleanQuery and PhrasePrefixQuery can provoke UnsupportedOperationException
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG�
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=33161>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND�
INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=33161
Summary: Combination of BooleanQuery and PhrasePrefixQuery can
provoke UnsupportedOperationException
Product: Lucene
Version: 1.4
Platform: All
OS/Version: Mac OS X 10.3
Status: NEW
Severity: normal
Priority: P2
Component: Search
AssignedTo: lucene-dev@jakarta.apache.org
ReportedBy: rhett@detailedbalance.net
A BooleanQuery including a PhrasePrefixQuery can cause an exception to be thrown
from BooleanScorer#skipTo when the search is executed:
java.lang.UnsupportedOperationException
at org.apache.lucene.search.BooleanScorer.skipTo(BooleanScorer.java:189)
at org.apache.lucene.search.ConjunctionScorer.doNext(ConjunctionScorer.java:53)
at org.apache.lucene.search.ConjunctionScorer.next(ConjunctionScorer.java:48)
at org.apache.lucene.search.Scorer.score(Scorer.java:37)
at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:92)
at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:64)
at org.apache.lucene.search.Hits.<init>(Hits.java:43)
at org.apache.lucene.search.Searcher.search(Searcher.java:33)
at org.apache.lucene.search.Searcher.search(Searcher.java:27)
... (non-lucene code)
The problem appears to be that PhrasePrefixQuery optimizes itself into a
BooleanQuery when it contains only one term. However, it does this in the
createWeight() method of its scorer instead of in the rewrite method of the
query itself. Thus it bypasses the boolean typecheck when BooleanQuery is
deciding whether to use ConjunctionScorer or BooleanScorer, eventually resulting
in the UOE.
--
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
---------------------------------------------------------------------
To unsubscribe, e-mail: lucene-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: lucene-dev-help@jakarta.apache.org