[ https://issues.apache.org/jira/browse/LUCENE-2110?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Uwe Schindler updated LUCENE-2110: ---------------------------------- Attachment: LUCENE-2110.patch Attached is patch that allows the TermsEnum to go backwards and not break if end of underlying TermsEnum is reached after next() or seek(). The method nextSeekTerm() gets a boolean if the underlying TermsEnum is exhausted. Enums that work in order can the simply return null to break iteration. But they are free to reposition to a term before. > 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, 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