[
https://issues.apache.org/jira/browse/LUCENE-3482?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13119119#comment-13119119
]
Chris Male commented on LUCENE-3482:
------------------------------------
I really have to echo Yonik's concerns here. If we provide too much
abstraction and indirection in the code then you're going to see a performance
decrease just from method call overhead. This is especially so if the
ValueSources contain multiple layers.
> Refactor grouping module to be more maintainable
> ------------------------------------------------
>
> Key: LUCENE-3482
> URL: https://issues.apache.org/jira/browse/LUCENE-3482
> Project: Lucene - Java
> Issue Type: Improvement
> Components: modules/grouping
> Affects Versions: 4.0
> Reporter: Martijn van Groningen
> Fix For: 4.0
>
> Attachments: LUCENE-3482.patch
>
>
> Currently we have 4 types of grouping collectors and 8 concrete subclasses in
> Lucene / Solr. In current architecture for each type of collector two
> concrete subclasses need to be created. An implementation optimized for
> single term based groups and a more general implementation that works with
> MutableValue to also support grouping by functions. If we want for example
> group by IndexDocValues each type of grouping collector needs to have three
> concrete subclasses. This design isn't very maintainable.
> I think it is best to introduce a concept that knows how deals with dealing
> groups for all the different sources. Therefore the grouping module should
> depend on the queries module, so that grouping can reuse the ValueSource
> concept. A term based concrete impl. of this concept knows for example to use
> the DocValues.ord() method. Or more generic concrete impl. will use
> DocValues.ValueFiller.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]