[ https://issues.apache.org/jira/browse/LUCENE-2110?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12786452#action_12786452 ]
Uwe Schindler commented on LUCENE-2110: --------------------------------------- It will work (theoretically) but can fail: if you seek to the last term and accept it, the next call to next() will end the enum, even if there may be more positions to seek. You cannot rely on the fact that all seek terms are visited. Because of that it *should* be foreward only, if other, you must know what you do > Change FilteredTermsEnum to work like Iterator, so it is not positioned and > next() must be always called first. Remove empty() > ------------------------------------------------------------------------------------------------------------------------------ > > Key: LUCENE-2110 > URL: https://issues.apache.org/jira/browse/LUCENE-2110 > Project: Lucene - Java > Issue Type: Improvement > Components: Search > Affects Versions: Flex Branch > Reporter: Uwe Schindler > Assignee: Uwe Schindler > Fix For: Flex Branch > > Attachments: LUCENE-2110.patch, LUCENE-2110.patch, LUCENE-2110.patch, > LUCENE-2110.patch > > > FilteredTermsEnum is confusing as it is initially positioned to the first > term. It should instead work like an uninitialized TermsEnum for a field > before the first call to next() or seek(). > Also document that not all FilteredTermsEnums may implement seek() as eg. NRQ > or Automaton are not able to support this. Seeking is also not needed for MTQ > at all, so seek can just throw UOE. -- 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-unsubscr...@lucene.apache.org For additional commands, e-mail: java-dev-h...@lucene.apache.org