[ https://issues.apache.org/jira/browse/SOLR-14977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17226287#comment-17226287 ]
Ilan Ginzburg commented on SOLR-14977: -------------------------------------- Placement plugin config (names, types and values) are decided by the plugin writer, so can't be hard coded in a Solr class. A plugin might use configuration named {{myfirstString}}, {{aLong}}, {{aDoubleConfig}} and {{shouldIStay}} (poor name choices if you ask me). A more realistic plugin would go for {{minimalFreeDiskGB}} and {{deprioritizedFreeDiskGB}} (see [SamplePluginAffinityReplicaPlacement|https://github.com/apache/lucene-solr/blob/master/solr/core/src/java/org/apache/solr/cluster/placement/plugins/SamplePluginAffinityReplicaPlacement.java#L86]). > 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 > Attachments: SOLR-14977.patch > > > 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