Unable to upgrade from 2.1.3-1 to 2.2.3

We have shutdown all graylog servers. I shutdown all the graylog nodes and upgraded the graylog master (using yum) and started graylog-server, it fails to start with the following output in journalctl:

May 24 14:54:20 logbe1 graylog-server[20196]: Exception in thread “main” java.lang.NoClassDefFoundError: org/graylog2/indexer/Deflector
May 24 14:54:20 logbe1 graylog-server[20196]: at java.lang.Class.getDeclaredConstructors0(Native Method)
May 24 14:54:20 logbe1 graylog-server[20196]: at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)
May 24 14:54:20 logbe1 graylog-server[20196]: at java.lang.Class.getDeclaredConstructors(Class.java:2020)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.assistedinject.FactoryProvider2.findMatchingConstructorInjectionPoint(FactoryProvider2.java:493)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.assistedinject.FactoryProvider2.(FactoryProvider2.java:293)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.assistedinject.FactoryModuleBuilder$1.configure(FactoryModuleBuilder.java:334)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.AbstractModule.configure(AbstractModule.java:62)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.AbstractModule.install(AbstractModule.java:122)
May 24 14:54:20 logbe1 graylog-server[20196]: at org.graylog.plugins.archive.ArchivePluginModule.configure(ArchivePluginModule.java:35)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.AbstractModule.configure(AbstractModule.java:62)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
May 24 14:54:20 logbe1 graylog-server[20196]: at org.graylog2.shared.bindings.PluginBindings.configure(PluginBindings.java:51)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.AbstractModule.configure(AbstractModule.java:62)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.spi.Elements.getElements(Elements.java:110)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
May 24 14:54:20 logbe1 graylog-server[20196]: at com.google.inject.Guice.createInjector(Guice.java:99)
May 24 14:54:20 logbe1 graylog-server[20196]: at org.graylog2.shared.bindings.GuiceInjectorHolder.createInjector(GuiceInjectorHolder.java:34)
May 24 14:54:20 logbe1 graylog-server[20196]: at org.graylog2.bootstrap.CmdLineTool.setupInjector(CmdLineTool.java:379)
May 24 14:54:20 logbe1 graylog-server[20196]: at org.graylog2.bootstrap.CmdLineTool.run(CmdLineTool.java:193)
May 24 14:54:20 logbe1 graylog-server[20196]: at org.graylog2.bootstrap.Main.main(Main.java:44)
May 24 14:54:20 logbe1 graylog-server[20196]: Caused by: java.lang.ClassNotFoundException: org.graylog2.indexer.Deflector
May 24 14:54:20 logbe1 graylog-server[20196]: at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
May 24 14:54:20 logbe1 graylog-server[20196]: at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
May 24 14:54:20 logbe1 graylog-server[20196]: at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:814)
May 24 14:54:20 logbe1 graylog-server[20196]: at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

And the following in server.log:

2017-05-24T14:55:26.886+12:00 INFO [CmdLineTool] Loaded plugin: ArchivePlugin 1.0.0-rc.3 [com.graylog.plugins.archive.ArchivePlugin]
2017-05-24T14:55:26.887+12:00 INFO [CmdLineTool] Loaded plugin: Elastic Beats Input 2.2.3 [org.graylog.plugins.beats.BeatsInputPlugin]
2017-05-24T14:55:26.888+12:00 INFO [CmdLineTool] Loaded plugin: Collector 2.2.3 [org.graylog.plugins.collector.CollectorPlugin]
2017-05-24T14:55:26.888+12:00 INFO [CmdLineTool] Loaded plugin: Enterprise Integration Plugin 2.2.3 [org.graylog.plugins.enterprise_integration.EnterpriseIntegrationPlugin]
2017-05-24T14:55:26.889+12:00 INFO [CmdLineTool] Loaded plugin: MapWidgetPlugin 2.2.3 [org.graylog.plugins.map.MapWidgetPlugin]
2017-05-24T14:55:26.896+12:00 INFO [CmdLineTool] Loaded plugin: Pipeline Processor Plugin 2.2.3 [org.graylog.plugins.pipelineprocessor.ProcessorPlugin]
2017-05-24T14:55:26.896+12:00 INFO [CmdLineTool] Loaded plugin: Anonymous Usage Statistics 2.2.3 [org.graylog.plugins.usagestatistics.UsageStatsPlugin]
2017-05-24T14:55:27.048+12:00 INFO [CmdLineTool] Running with JVM arguments: -Xms1g -Xmx1g -XX:NewRatio=1 -XX:+ResizeTLAB -XX:+UseConcMarkSweepGC -XX:+CMSConcurrentMTEnabled -XX:+CMSClassUnloadingEnabled -XX:+UseParNewGC -XX:-OmitStackTraceInFastThrow -Dlog4j.configurationFile=file:///etc/graylog/server/log4j2.xml -Djava.library.path=/usr/share/graylog-server/lib/sigar -Dgraylog2.installation_source=rpm
2017-05-24T14:55:27.206+12:00 INFO [Version] HV000001: Hibernate Validator null

Any idea why it can load the class or why it’s not starting?

Turns out it was an incompatible plugin - I had installed the archive plugin a while back. Removing this got it working as expected.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.