I got the following exception while starting elasticsearch on a docker container.
[2018-02-21T21:35:04,941][INFO ][o.e.p.PluginsService ] [682c5c69a4db] loaded module [lang-painless]
...
[2018-02-21T21:35:04,945][INFO ][o.e.p.PluginsService ] [682c5c69a4db] loaded plugin [analysis-phonetic]
[2018-02-21T21:35:04,946][INFO ][o.e.p.PluginsService ] [682c5c69a4db] loaded plugin [ingest-attachment]
[2018-02-21T21:35:04,946][INFO ][o.e.p.PluginsService ] [682c5c69a4db] loaded plugin [ingest-geoip]
[2018-02-21T21:35:04,946][INFO ][o.e.p.PluginsService ] [682c5c69a4db] loaded plugin [we-elastic-svc]
[2018-02-21T21:35:05,308][ERROR][o.e.b.Bootstrap ] Exception
java.lang.IllegalArgumentException: error loading whitelist(s) [org.elasticsearch.txt]:[101]
at org.elasticsearch.painless.Definition.(Definition.java:597) ~[?:?]
at org.elasticsearch.painless.PainlessScriptEngine.(PainlessScriptEngine.java:106) ~[?:?]
at org.elasticsearch.painless.PainlessPlugin.getScriptEngine(PainlessPlugin.java:59) ~[?:?]
at org.elasticsearch.script.ScriptModule.(ScriptModule.java:69) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.node.Node.(Node.java:327) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.node.Node.(Node.java:246) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:213) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:213) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:323) [elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) [elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) [elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) [elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) [elasticsearch-cli-6.2.1.jar:6.2.1]
at org.elasticsearch.cli.Command.main(Command.java:90) [elasticsearch-cli-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) [elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:85) [elasticsearch-6.2.1.jar:6.2.1]
Caused by: java.lang.IllegalArgumentException: struct not defined for return type [double] with owner struct [org.elasticsearch.index.fielddata.ScriptDocValues.GeoPoints] and method with name [getLats] and parameters
at org.elasticsearch.painless.Definition.addMethod(Definition.java:915) ~[?:?]
at org.elasticsearch.painless.Definition.(Definition.java:587) ~[?:?]
... 15 more
Caused by: java.lang.IllegalArgumentException: The class could not be found to create type [double].
at org.elasticsearch.painless.Definition.getTypeInternal(Definition.java:1284) ~[?:?]
at org.elasticsearch.painless.Definition.getTypeInternal(Definition.java:1259) ~[?:?]
at org.elasticsearch.painless.Definition.addMethod(Definition.java:913) ~[?:?]
at org.elasticsearch.painless.Definition.(Definition.java:587) ~[?:?]
... 15 more
Caused by: java.lang.IllegalArgumentException: struct not defined for return type [double] with owner struct [org.elasticsearch.index.fielddata.ScriptDocValues.GeoPoints] and method with name [getLats] and parameters
at org.elasticsearch.painless.Definition.addMethod(Definition.java:915) ~[?:?]
at org.elasticsearch.painless.Definition.(Definition.java:587) ~[?:?]
at org.elasticsearch.painless.PainlessScriptEngine.(PainlessScriptEngine.java:106) ~[?:?]
at org.elasticsearch.painless.PainlessPlugin.getScriptEngine(PainlessPlugin.java:59) ~[?:?]
at org.elasticsearch.script.ScriptModule.(ScriptModule.java:69) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.node.Node.(Node.java:327) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.node.Node.(Node.java:246) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:213) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:213) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:323) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) ~[elasticsearch-6.2.1.jar:6.2.1]
... 6 more
Caused by: java.lang.IllegalArgumentException: The class could not be found to create type [double].
at org.elasticsearch.painless.Definition.getTypeInternal(Definition.java:1284) ~[?:?]
at org.elasticsearch.painless.Definition.getTypeInternal(Definition.java:1259) ~[?:?]
at org.elasticsearch.painless.Definition.addMethod(Definition.java:913) ~[?:?]
at org.elasticsearch.painless.Definition.(Definition.java:587) ~[?:?]
at org.elasticsearch.painless.PainlessScriptEngine.(PainlessScriptEngine.java:106) ~[?:?]
at org.elasticsearch.painless.PainlessPlugin.getScriptEngine(PainlessPlugin.java:59) ~[?:?]
at org.elasticsearch.script.ScriptModule.(ScriptModule.java:69) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.node.Node.(Node.java:327) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.node.Node.(Node.java:246) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:213) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:213) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:323) ~[elasticsearch-6.2.1.jar:6.2.1]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) ~[elasticsearch-6.2.1.jar:6.2.1]
... 6 more
I suspected our plugin (we-elastic-svc) was the cause (the error went away if I removed the plugin from the docker run command). But the plugin has no painless script, geo or double anything in the code. Just looking for ideas of how to debug and solve this error. Please help!!!