on the "How To Contribute" page there's a link for getting the preferred
formats for Eclipse and IntelliJ. From there, it's a keystroke or two to
have all the formatting for a file done.

Generally we don't want to format the whole file when changing just a part
of it, makes diffs harder. But for new code please do!




On Mon, Jul 1, 2013 at 11:21 PM, Otis Gospodnetic (JIRA) <j...@apache.org>wrote:

>
>     [
> https://issues.apache.org/jira/browse/SOLR-4465?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13697457#comment-13697457]
>
> Otis Gospodnetic commented on SOLR-4465:
> ----------------------------------------
>
> Can we have this for Solr 4.4? :)
> Hm, any unit tests?
>
> I spotted a few typos:
> * EMPTY_DELGATING
> * signiture, topDocsSigniture, maybe more variations on the theme...
>
> Also:
> * noticed new classes use 4 spaces instead of 2 and don't have any
> class-level javadoc
> * spotted a few public methods with no javadocs (e.g. merge
> * a mixture of spacing styles - sometimes space between if and (,
> sometimes now, sometimes space before {, sometimes not.... sometimes { on a
> new line, sometimes on the same line, sometimes space around = sign,
> sometimes not... :)
> * left over System.out.println(
> * t.printStackTrace(new PrintWriter(trace)); - should that be there? Or
> should it be logged?
>
>
> > Configurable Collectors
> > -----------------------
> >
> >                 Key: SOLR-4465
> >                 URL: https://issues.apache.org/jira/browse/SOLR-4465
> >             Project: Solr
> >          Issue Type: New Feature
> >          Components: search
> >    Affects Versions: 4.1
> >            Reporter: Joel Bernstein
> >             Fix For: 4.4
> >
> >         Attachments: SOLR-4465.patch, SOLR-4465.patch, SOLR-4465.patch,
> SOLR-4465.patch, SOLR-4465.patch, SOLR-4465.patch, SOLR-4465.patch,
> SOLR-4465.patch, SOLR-4465.patch, SOLR-4465.patch, SOLR-4465.patch,
> SOLR-4465.patch, SOLR-4465.patch, SOLR-4465.patch, SOLR-4465.patch,
> SOLR-4465.patch, SOLR-4465.patch
> >
> >
> > This ticket provides a patch to add pluggable collectors to Solr. This
> patch was generated and tested with Solr 4.1.
> > This is how the patch functions:
> > Collectors are plugged into Solr in the solconfig.xml using the new
> collectorFactory element. For example:
> > <collectorFactory name="default" class="solr.CollectorFactory"/>
> > <collectorFactory name="sum" class="solr.SumCollectorFactory"/>
> > The elements above define two collector factories. The first one is the
> "default" collectorFactory. The class attribute points to
> org.apache.solr.handler.component.CollectorFactory, which implements logic
> that returns the default TopScoreDocCollector and TopFieldCollector.
> > To create your own collectorFactory you must subclass the default
> CollectorFactory and at a minimum override the getCollector method to
> return your new collector.
> > The parameter "cl" turns on pluggable collectors:
> > cl=true
> > If cl is not in the parameters, Solr will automatically use the default
> collectorFactory.
> > *Pluggable Doclist Sorting With the Docs Collector*
> > You can specify two types of pluggable collectors. The first type is the
> docs collector. For example:
> > cl.docs=<name>
> > The above param points to a named collectorFactory in the solrconfig.xml
> to construct the collector. The docs collectorFactorys must return a
> collector that extends the TopDocsCollector base class. Docs collectors are
> responsible for collecting the doclist.
> > You can specify only one docs collector per query.
> > You can pass parameters to the docs collector using local params syntax.
> For example:
> > cl.docs=\{! sort=mycustomesort\}mycollector
> > If cl=true and a docs collector is not specified, Solr will use the
> default collectorFactory to create the docs collector.
> > *Pluggable Custom Analytics With Delegating Collectors*
> > You can also specify any number of custom analytic collectors with the
> "cl.analytic" parameter. Analytic collectors are designed to collect
> something else besides the doclist. Typically this would be some type of
> custom analytic. For example:
> > cl.analytic=sum
> > The parameter above specifies a analytic collector named sum. Like the
> docs collectors, "sum" points to a named collectorFactory in the
> solrconfig.xml. You can specificy any number of analytic collectors by
> adding additional cl.analytic parameters.
> > Analytic collector factories must return Collector instances that extend
> DelegatingCollector.
> > A sample analytic collector is provided in the patch through the
> org.apache.solr.handler.component.SumCollectorFactory.
> > This collectorFactory provides a very simple DelegatingCollector that
> groups by a field and sums a column of floats. The sum collector is not
> designed to be a fully functional sum function but to be a proof of concept
> for pluggable analytics through delegating collectors.
> > You can send parameters to analytic collectors with solr local param
> syntax.
> > For example:
> > cl.analytic=\{! id=1 groupby=field1 column=field2\}sum
> > The "id" parameter is mandatory for analytic collectors and is used to
> identify the output from the collector. In this example the "groupby" and
> "column" params tell the sum collector which field to group by and sum.
> > Analytic collectors are passed a reference to the ResponseBuilder and
> can place maps with analytic output directory into the SolrQueryResponse
> with the add() method.
> > Maps that are placed in the SolrQueryResponse are automatically added to
> the outgoing response. The response will include a list named
> cl.analytic.<id>, where id is specified in the local param.
> > *Distributed Search*
> > The CollectorFactory also has a method called merge(). This method
> aggregates the results from each of the shards during distributed search.
> The "default" CollectoryFactory implements the default merge logic for
> merging documents from each shard. If you define a different docs collector
> you can override the default merge method to merge documents in accordance
> with how they are collected at the shard level.
> > With analytic collectors, you'll need to override the merge method to
> merge the analytic output from the shards. An example of how this works is
> provided in the SumCollectorFactory.
> > Each collectorFactory, that is specified in the http parameters, will
> have its merge method applied by the Solr aggregator node.
> > *Testing the Patch With Sample Data*
> > 1) Apply patch to Solr 4.1
> > 2) Load sample data
> > 3) Send the http command:
> >
> http://localhost:8983/solr/select?q=*:*&cl=true&facet=true&facet.field=manu_id_s&cl.analytic=%7B!+id=%271%27+groupby=%27manu_id_s%27+column=%27price%27%7Dsum
> >
>
> --
> This message is automatically generated by JIRA.
> If you think it was sent incorrectly, please contact your JIRA
> administrators
> For more information on JIRA, see: http://www.atlassian.com/software/jira
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
> For additional commands, e-mail: dev-h...@lucene.apache.org
>
>

Reply via email to