[ 
https://issues.apache.org/jira/browse/LUCENE-7627?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alan Woodward updated LUCENE-7627:
----------------------------------
    Attachment: LUCENE-7627.patch

OK, termsEnum(CompiledAutomaton) is now intersect(CA).  Running tests now, I'd 
like to get this in for 6.4 as it means we can use it in marple quickly.  The 
next steps we can do in a follow-up issue.

> 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
>         Attachments: LUCENE-7627.patch, LUCENE-7627.patch
>
>
> 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