[ 
https://issues.apache.org/jira/browse/SOLR-14977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17225524#comment-17225524
 ] 

Andrzej Bialecki commented on SOLR-14977:
-----------------------------------------

Thanks [~ilan] this is very helpful, I think we should reuse this approach.

BTW, I think that the placement plugin info should live in the same place as 
other plugins, there should be no need to put it in a separate sub-section of 
/clusterprops.json. Then we could reuse the already existing mechanism for 
plugin config monitoring, plugin reloading etc in {{CustomContainerPlugins}}. 
This is what the {{ClusterSingleton}} and the upcoming {{ClusterEventProducer}} 
use in order to enable dynamic reloading of plugins. But that's a separate 
issue :)

> Container plugins need a way to be configured
> ---------------------------------------------
>
>                 Key: SOLR-14977
>                 URL: https://issues.apache.org/jira/browse/SOLR-14977
>             Project: Solr
>          Issue Type: Improvement
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: Plugin system
>            Reporter: Andrzej Bialecki
>            Priority: Major
>
> Container plugins are defined in {{/clusterprops.json:/plugin}} using a 
> simple {{PluginMeta}} bean. This is sufficient for implementations that don't 
> need any configuration except for the {{pathPrefix}} but insufficient for 
> anything else that needs more configuration parameters.
> An example would be a {{CollectionsRepairEventListener}} plugin proposed in 
> PR-1962, which needs parameters such as the list of collections, {{waitFor}}, 
> maximum operations allowed, etc. to properly function.
> This issue proposes to extend the {{PluginMeta}} bean to allow a 
> {{Map<String, Object>}} configuration parameters.
> There is an interface that we could potentially use ({{MapInitializedPlugin}} 
> but it works only with {{String}} values. This is not optimal because it 
> requires additional type-safety validation from the consumers. The existing 
> {{PluginInfo}} / {{PluginInfoInitialized}} interface is too complex for this 
> purpose.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to