Alan Woodward created LUCENE-7627:
-------------------------------------

             Summary: Improve TermsEnum automaton filtering APIs
                 Key: LUCENE-7627
                 URL: https://issues.apache.org/jira/browse/LUCENE-7627
             Project: Lucene - Core
          Issue Type: Improvement
            Reporter: Alan Woodward


To filter a TermsEnum by a CompiledAutomaton, we currently have a number of 
different possibilities:
* Terms.intersect(CompiledAutomaton, BytesRef) - efficient, but only works on 
NORMAL type automata
* CompiledAutomaton.getTerms(Terms) - efficient, works on all automaton types, 
but requires a Terms instead of a TermsEnum, so no use for eg 
SortedDocValues.termsEnum()
* AutomatonTermsEnum - takes a TermsEnum, so it's more general than the Terms 
methods above, but agian only works on NORMAL automata

It's easy to do the wrong thing here, and at the moment we only guard against 
incorrect usage via runtime checks (see eg LUCENE-7576, 
https://github.com/flaxsearch/marple/issues/24).  We should try and clean this 
up.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to