elasticsearch-report-engine icon indicating copy to clipboard operation
elasticsearch-report-engine copied to clipboard

ERROR This plugin was built with an older plugin structure

Open aleksey-korolev opened this issue 5 years ago • 9 comments

Trying to install latest available release of plugin 5.6.10 to the latest available version of ES 5.7.1 and get error about plugin structure:

cd /opt/bitnami/elasticsearch/ sudo bin/elasticsearch-plugin install https://github.com/malike/elasticsearch-report-engine/releases/download/5.6.10/st.malike.elasticsearch.report.engine-5.6.10.zip -> Downloading https://github.com/malike/elasticsearch-report-engine/releases/download/5.6.10/st.malike.elasticsearch.report.engine-5.6.10.zip [=================================================] 100%   ERROR: This plugin was built with an older plugin structure. Contact the plugin author to remove the intermediate "elasticsearch" directory within the plugin zip.

aleksey-korolev avatar Jan 14 '20 10:01 aleksey-korolev

Tried to repackage plugin using new plugin structure (w/o elasticsearch folder) and got compatibility check error:

sudo bin/elasticsearch-plugin install file:///home/bitnami/st.malike.elasticsearch.report.engine-5.6.10.zip -> Downloading file:///home/bitnami/st.malike.elasticsearch.report.engine-5.6.10.zip [=================================================] 100%   Exception in thread "main" java.lang.IllegalArgumentException: Plugin [st.malike.elasticsearch.report.engine] was built for Elasticsearch version 5.6.10 but version 7.5.1 is running at org.elasticsearch.plugins.PluginsService.verifyCompatibility(PluginsService.java:346) at org.elasticsearch.plugins.InstallPluginCommand.loadPluginInfo(InstallPluginCommand.java:728) at org.elasticsearch.plugins.InstallPluginCommand.installPlugin(InstallPluginCommand.java:803) at org.elasticsearch.plugins.InstallPluginCommand.install(InstallPluginCommand.java:786) at org.elasticsearch.plugins.InstallPluginCommand.execute(InstallPluginCommand.java:232) at org.elasticsearch.plugins.InstallPluginCommand.execute(InstallPluginCommand.java:217) at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:125) at org.elasticsearch.cli.MultiCommand.execute(MultiCommand.java:77) at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:125) at org.elasticsearch.cli.Command.main(Command.java:90) at org.elasticsearch.plugins.PluginCli.main(PluginCli.java:47)

aleksey-korolev avatar Jan 14 '20 13:01 aleksey-korolev

I changed ES version from 5.6.10 to elasticsearch.version=7.5.1 in plugin-descriptor.properties to make a quick check if plugin can be used as is with new ES version and got following error on ES start:

[2020-01-15T09:01:13,979][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded plugin [st.malike.elasticsearch.report.engine] [2020-01-15T09:01:20,099][INFO ][o.e.d.DiscoveryModule ] [ip-172-31-10-76] using discovery type [single-node] and seed hosts providers [settings] [2020-01-15T09:01:21,391][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [ip-172-31-10-76] fatal error in thread [main], exiting java.lang.NoSuchMethodError: org.elasticsearch.rest.BaseRestHandler.(Lorg/elasticsearch/common/settings/Settings;)V at st.malike.elastic.report.engine.ReportGenerateRestAction.(ReportGenerateRestAction.java:35) ~[?:?] at st.malike.elastic.report.engine.ElasticReportPlugin.getRestHandlers(ElasticReportPlugin.java:29) ~[?:?] at org.elasticsearch.action.ActionModule.initRestHandlers(ActionModule.java:695) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.node.Node.(Node.java:602) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.node.Node.(Node.java:253) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:221) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:221) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:349) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:125) ~[elasticsearch-cli-7.5.1.jar:7.5.1] at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-7.5.1.jar:7.5.1] [2020-01-15T09:02:48,594][INFO ][o.e.e.NodeEnvironment ] [ip-172-31-10-76] using [1] data paths, mounts [[/ (/dev/nvme0n1p1)]], net usable_space [6.2gb], net total_space [9.6gb], types [ext4] [2020-01-15T09:02:48,595][INFO ][o.e.e.NodeEnvironment ] [ip-172-31-10-76] heap size [1007.3mb], compressed ordinary object pointers [true] [2020-01-15T09:02:48,609][INFO ][o.e.n.Node ] [ip-172-31-10-76] node name [ip-172-31-10-76], node ID [Eb8NK1hbRzSHBkb7m7C1Zg], cluster name [elasticsearch] [2020-01-15T09:02:48,609][INFO ][o.e.n.Node ] [ip-172-31-10-76] version[7.5.1], pid[31336], build[oss/tar/3ae9ac9a93c95bd0cdc054951cf95d88e1e18d96/2019-12-16T22:57:37.835892Z], OS[Linux/4.4.0-1099-aws/amd64], JVM[AdoptOpenJDK/OpenJDK 64-Bit Server VM/1.8.0_232/25.232-b09] [2020-01-15T09:02:48,610][INFO ][o.e.n.Node ] [ip-172-31-10-76] JVM home [/opt/bitnami/java] [2020-01-15T09:02:48,610][INFO ][o.e.n.Node ] [ip-172-31-10-76] JVM arguments [-Des.networkaddress.cache.ttl=60, -Des.networkaddress.cache.negative.ttl=10, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dio.netty.allocator.numDirectArenas=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Djava.locale.providers=COMPAT, -Xms1g, -Xmx1g, -XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -Djava.io.tmpdir=/tmp/elasticsearch-6886232867021781631, -XX:+HeapDumpOnOutOfMemoryError, -XX:HeapDumpPath=data, -XX:ErrorFile=logs/hs_err_pid%p.log, -XX:+PrintGCDetails, -XX:+PrintGCDateStamps, -XX:+PrintTenuringDistribution, -XX:+PrintGCApplicationStoppedTime, -Xloggc:logs/gc.log, -XX:+UseGCLogFileRotation, -XX:NumberOfGCLogFiles=32, -XX:GCLogFileSize=64m, -XX:MaxMetaspaceSize=256M, -Xms1024M, -Xmx1024M, -XX:MaxDirectMemorySize=536870912, -Des.path.home=/opt/bitnami/elasticsearch, -Des.path.conf=/opt/bitnami/elasticsearch/config, -Des.distribution.flavor=oss, -Des.distribution.type=tar, -Des.bundled_jdk=true] [2020-01-15T09:02:50,390][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [aggs-matrix-stats] [2020-01-15T09:02:50,391][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [analysis-common] [2020-01-15T09:02:50,391][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [ingest-common] [2020-01-15T09:02:50,391][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [ingest-geoip] [2020-01-15T09:02:50,392][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [ingest-user-agent] [2020-01-15T09:02:50,392][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [lang-expression] [2020-01-15T09:02:50,392][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [lang-mustache] [2020-01-15T09:02:50,392][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [lang-painless] [2020-01-15T09:02:50,393][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [mapper-extras] [2020-01-15T09:02:50,393][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [parent-join] [2020-01-15T09:02:50,393][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [percolator] [2020-01-15T09:02:50,394][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [rank-eval] [2020-01-15T09:02:50,394][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [reindex] [2020-01-15T09:02:50,394][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [repository-url] [2020-01-15T09:02:50,394][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded module [transport-netty4] [2020-01-15T09:02:50,395][INFO ][o.e.p.PluginsService ] [ip-172-31-10-76] loaded plugin [st.malike.elasticsearch.report.engine] [2020-01-15T09:02:55,527][INFO ][o.e.d.DiscoveryModule ] [ip-172-31-10-76] using discovery type [single-node] and seed hosts providers [settings] [2020-01-15T09:02:56,720][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [ip-172-31-10-76] fatal error in thread [main], exiting java.lang.NoSuchMethodError: org.elasticsearch.rest.BaseRestHandler.(Lorg/elasticsearch/common/settings/Settings;)V at st.malike.elastic.report.engine.ReportGenerateRestAction.(ReportGenerateRestAction.java:35) ~[?:?] at st.malike.elastic.report.engine.ElasticReportPlugin.getRestHandlers(ElasticReportPlugin.java:29) ~[?:?] at org.elasticsearch.action.ActionModule.initRestHandlers(ActionModule.java:695) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.node.Node.(Node.java:602) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.node.Node.(Node.java:253) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:221) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:221) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:349) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-7.5.1.jar:7.5.1] at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:125) ~[elasticsearch-cli-7.5.1.jar:7.5.1] :

aleksey-korolev avatar Jan 15 '20 09:01 aleksey-korolev

@aleksey-korolev I am also facing the same issue, while using this plugin for Elasticsearch 7.4.2 version. Were you able to find a fix for it?

java.lang.NoSuchMethodError: org.elasticsearch.rest.BaseRestHandler.(Lorg/elasticsearch/common/settings/Settings;)V at st.malike.elastic.report.engine.ReportGenerateRestAction.(ReportGenerateRestAction.java:35) ~[?:?] at st.malike.elastic.report.engine.ElasticReportPlugin.getRestHandlers(ElasticReportPlugin.java:29) ~[?:?] at org.elasticsearch.action.ActionModule.initRestHandlers(ActionModule.java:692) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.node.Node.(Node.java:609) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.node.Node.(Node.java:255) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:221) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:221) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:349) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:125) ~[elasticsearch-cli-7.4.2.jar:7.4.2] at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-7.4.2.jar:7.4.2] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115) ~[elasticsearch-7.4.2.jar:7.4.2] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-7.4.2.jar:7.4.2]

venkatBG avatar Jun 18 '20 12:06 venkatBG

@aleksey-korolev I am also facing the same issue, while using this plugin for Elasticsearch 7.4.2 version. Were you able to find a fix for it?

Nope, used another reporting solution in the end.

aleksey-korolev avatar Jun 18 '20 18:06 aleksey-korolev

@aleksey-korolev Can you please post details about the reporting solution you used to get data from elasticsearch? I am in need of generating PDF reports from elasticsearch datas.

venkatBG avatar Jun 19 '20 06:06 venkatBG

AFAIR we used JasperReports in the end.

aleksey-korolev avatar Jun 19 '20 11:06 aleksey-korolev

@aleksey-korolev which version of Jasper reports have you used? and can you share me the documentation on how you connected to Elasticsearch datasource? Did you use any plugins ?

venkatBG avatar Jun 19 '20 11:06 venkatBG

Sorry, that was passed to another engineer so not many details to share. I think data was selected using java code w/o using any plugins.

aleksey-korolev avatar Jun 19 '20 11:06 aleksey-korolev

@aleksey-korolev Thanks for the update.

venkatBG avatar Jun 19 '20 12:06 venkatBG