I'm having an issue with an elastic search plugin I'm trying to write...basically I need my own settings (like passed in as System props or defined in elasticsearch.yml)...originally I started on an earlier version of elastic search for development and testing, but since I have upgraded to 6.1.1. However...now my setting gets loaded by my plugin, but then immediately fails validation... org.elasticsearch.bootstrap.StartupException: "java.lang.IllegalArgumentException: unknown setting [my.setting] please check that any required plugins are installed, or check the breaking changes documentation for removed settings"
Documentation in breaking changes 5.4 (https://www.elastic.co/guide/en/elasticsearch/reference/5.4/breaking_50_settings_changes.html) says "From Elasticsearch 5.0 on all settings are validated before they are applied. Node level and default index level settings are validated on node startup, dynamic cluster and index setting are validated before they are updated/added to the cluster state.
Every setting must be a known setting. All settings must have been registered with the node or transport client they are used with. This implies that plugins that define custom settings must register all of their settings during plugin loading using the SettingsModule#registerSettings(Setting) method."
I couldn't find any subsequent info that implied this has changed in later releases.
However...SettingsModule#registerSettings(Setting) is private...and from what I can tell always has been since it was introduced...what am I missing?
On the community website, there is a link (https://www.elastic.co/blog/found-writing-a-plugin) with information on writing your own plugin, but that site has a big warning...
WARNING: This article contains outdated information. We no longer recommend taking its advice.
Can anyone help me with my plugin specific setting question or is there more up to date documentation available?