You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by "Tim Owen (Jira)" <ji...@apache.org> on 2024/10/04 14:49:00 UTC

[jira] [Created] (SOLR-17477) Allow plugin code to define custom aggregates

Tim Owen created SOLR-17477:
-------------------------------

             Summary: Allow plugin code to define custom aggregates
                 Key: SOLR-17477
                 URL: https://issues.apache.org/jira/browse/SOLR-17477
             Project: Solr
          Issue Type: Improvement
      Security Level: Public (Default Security Level. Issues are Public)
          Components: Facet Module, Plugin system
            Reporter: Tim Owen


Continuing the work done in SOLR-8673 and also addressing a TODO in the code, I've worked on making it easier for custom plugin code to define aggregates to be used in Json Faceting.

Currently you can mostly define a custom ValueSourceParser and AggValueSource in plugin code (i.e. outside of the {{org.apache.solr.search.facet}} package) but there are still some classes and fields that are not public or protected which make it hard to write a sortable aggregate or use some of the useful built-in SolrAcc implementations.

Another current limitation is that you can only call a custom aggregate by using the simple functional style syntax e.g. {{"mycalc":"myagg(somefield,2)"}} and not the json structured style e.g. it would be good to be able to support {{"mycalc":\{ type:myagg, f:somefield, limit:2 }}}

instead. There is a TODO in the code to support the registration of these types.

PR addresses these and has been tested using a custom plugin to check it all works together. This allowed us to move a lot of our custom code out of our local Solr build and into a plugin.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org