[
https://issues.apache.org/jira/browse/LUCENE-7617?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alan Woodward updated LUCENE-7617:
----------------------------------
Attachment: LUCENE-7617.patch
Thanks for the review Martijn! Here's an updated patch:
* no more 'Abstract' in abstract class names
* generics are changed so that instead of Class<ComplicatedInnerClassName<T>>,
we just use Class<T>. Also, type parameters are all set to T rather than
GROUP_VALUE_TYPE. You can shrink your windows when looking at grouping code
now :)
* Block grouping is left where it is
* Added javadocs, and extra {} around if statements.
Given that everything here is marked as experimental, I think we're OK to just
backwards-break? Most people will be using GroupingSearch, I think, which
stays the same.
> Improve GroupingSearch API and extensibility
> --------------------------------------------
>
> Key: LUCENE-7617
> URL: https://issues.apache.org/jira/browse/LUCENE-7617
> Project: Lucene - Core
> Issue Type: Improvement
> Reporter: Alan Woodward
> Assignee: Alan Woodward
> Priority: Minor
> Attachments: LUCENE-7617.patch, LUCENE-7617.patch
>
>
> While looking at how to make grouping work with the new XValuesSource API in
> core, I thought I'd try and clean up GroupingSearch a bit. We have three
> different ways of grouping at the moment: by doc block, using a single-pass
> collector; by field; and by ValueSource. The latter two both use essentially
> the same two-pass mechanism, with different Collector implementations.
> I can see a number of possible improvements here:
> * abstract the two-pass collector creation into a factory API, which should
> allow us to add the XValuesSource implementations as well
> * clean up the generics on the two-pass collectors - maybe look into removing
> them entirely? I'm not sure they add anything really, and we don't have them
> on the equivalent plan search APIs
> * think about moving the document block method into the join module instead,
> alongside all the other block-indexing code
> * rename the various Collector base classes so that they don't have
> 'Abstract' in them anymore
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]