[
https://issues.apache.org/jira/browse/LUCENE-2784?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12964867#action_12964867
]
Uwe Schindler edited comment on LUCENE-2784 at 11/29/10 1:27 PM:
-----------------------------------------------------------------
bq. I also removed multifields usage in these multitermqueries (maybe missed a
few, will look more), because all rewrite methods are per-segment.
MultiTermQueryWrapperFilter still has it :-) And TermCollectingRewrite does not
have it, which is correct because it knows that it works per-segment (that was
always the case).
But I think we should remove remaining MultiFields in a separate issue.
was (Author: thetaphi):
bq. I also removed multifields usage in these multitermqueries (maybe
missed a few, will look more), because all rewrite methods are per-segment.
MultiTermQueryWrapperFilter still has it :-) And TermCollectingRewrite does not
have it, which is correct because it knows that it works per-segment (that was
always the case). But I think we should remove that in a separate issue.
> Change all FilteredTermsEnum impls into TermsEnum decorators
> ------------------------------------------------------------
>
> Key: LUCENE-2784
> URL: https://issues.apache.org/jira/browse/LUCENE-2784
> Project: Lucene - Java
> Issue Type: Improvement
> Reporter: Robert Muir
> Assignee: Uwe Schindler
> Fix For: 4.0
>
> Attachments: LUCENE-2784.patch, LUCENE-2784.patch
>
>
> Currently, FilteredTermsEnum has two ctors:
> * FilteredTermsEnum(IndexReader reader, String field)
> * FilteredTermsEnum(TermsEnum tenum)
> But most of our concrete implementations (e.g. TermsRangeEnum) use the
> IndexReader+field ctor
> In my opinion we should remove this ctor, and switch over all
> FilteredTermsEnum implementations to just take a TermsEnum.
> Advantages:
> * This simplifies FilteredTermsEnum and its subclasses, where they are more
> decorator-like (perhaps in the future we could compose them)
> * Removes silly checks such as if (tenum == null) in every next()
> * Allows for consumers to pass in enumerators however they want: e.g. its
> their responsibility if they want to use MultiFields or not, it shouldnt be
> buried in FilteredTermsEnum.
> I created a quick patch (all core+contrib+solr tests pass), but i think this
> opens up more possibilities for refactoring improvements that haven't yet
> been done in the patch: we should explore these too.
--
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: [email protected]
For additional commands, e-mail: [email protected]