New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Java Runtime Exception after upgrading from 2.2.0-beta.2 to 2.2.0-beta.3 #3267
Comments
Thanks for testing the beta release! Can you please send us the complete log or at least a larger amount including the stack traces? |
@bernd Here is the entire snippet from a restart.
|
Running into the same issue here, debug logging shows the following: 2017-01-02T11:58:42.745+01:00 DEBUG [CmdLineTool] Stacktrace: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "default" (class org.graylog2.indexer.indexset.AutoValue_IndexSetConfig), not marked as ignorable (17 known properties: "index_optimization_disabled", "index_template_name", "index_wildcard", "index_match_pattern", "rotation_strategy_class", "creation_date", "index_analyzer", "rotation_strategy", "shards", "title", "index_optimization_max_num_segments", "_id", "replicas", "description", "index_prefix", "retention_strategy_class", "retention_strategy"]) at [Source: de.undercouch.bson4jackson.io.LittleEndianInputStream@3fe21d0e; pos: 666] (through reference chain: org.graylog2.indexer.indexset.AutoValue_IndexSetConfig["default"]) at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:62) ~[graylog.jar:?] at com.fasterxml.jackson.databind.DeserializationContext.handleUnknownProperty(DeserializationContext.java:834) ~[graylog.jar:?] at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:1093) ~[graylog.jar:?] at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1477) ~[graylog.jar:?] at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownVanilla(BeanDeserializerBase.java:1455) ~[graylog.jar:?] at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:246) ~[graylog.jar:?] at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handlePolymorphic(BeanDeserializerBase.java:1520) ~[graylog.jar:?] at com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased(BeanDeserializer.java:484) ~[graylog.jar:?] at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1198) ~[graylog.jar:?] at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:314) ~[graylog.jar:?] at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:148) ~[graylog.jar:?] at com.fasterxml.jackson.databind.ObjectMapper._readValue(ObjectMapper.java:3770) ~[graylog.jar:?] at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2165) ~[graylog.jar:?] at org.mongojack.internal.stream.JacksonDBDecoder.decode(JacksonDBDecoder.java:77) ~[graylog.jar:?] at org.mongojack.internal.stream.JacksonDBDecoder.decode(JacksonDBDecoder.java:64) ~[graylog.jar:?] at com.mongodb.DBDecoderAdapter.decode(DBDecoderAdapter.java:49) ~[graylog.jar:?] at com.mongodb.DBDecoderAdapter.decode(DBDecoderAdapter.java:29) ~[graylog.jar:?] at com.mongodb.connection.ReplyMessage.(ReplyMessage.java:57) ~[graylog.jar:?] at com.mongodb.connection.QueryProtocol.execute(QueryProtocol.java:297) ~[graylog.jar:?] at com.mongodb.connection.QueryProtocol.execute(QueryProtocol.java:54) ~[graylog.jar:?] at com.mongodb.connection.DefaultServer$DefaultServerProtocolExecutor.execute(DefaultServer.java:168) ~[graylog.jar:?] at com.mongodb.connection.DefaultServerConnection.executeProtocol(DefaultServerConnection.java:289) ~[graylog.jar:?] at com.mongodb.connection.DefaultServerConnection.query(DefaultServerConnection.java:212) ~[graylog.jar:?] at com.mongodb.operation.FindOperation$1.call(FindOperation.java:525) ~[graylog.jar:?] at com.mongodb.operation.FindOperation$1.call(FindOperation.java:510) ~[graylog.jar:?] at com.mongodb.operation.OperationHelper.withConnectionSource(OperationHelper.java:431) ~[graylog.jar:?] at com.mongodb.operation.OperationHelper.withConnection(OperationHelper.java:404) ~[graylog.jar:?] at com.mongodb.operation.FindOperation.execute(FindOperation.java:510) ~[graylog.jar:?] at com.mongodb.operation.FindOperation.execute(FindOperation.java:81) ~[graylog.jar:?] at com.mongodb.Mongo.execute(Mongo.java:836) ~[graylog.jar:?] at com.mongodb.Mongo$2.execute(Mongo.java:823) ~[graylog.jar:?] at com.mongodb.DBCursor.initializeCursor(DBCursor.java:870) ~[graylog.jar:?] at com.mongodb.DBCursor.hasNext(DBCursor.java:142) ~[graylog.jar:?] at org.mongojack.DBCursor.hasNext(DBCursor.java:330) ~[graylog.jar:?] at org.mongojack.JacksonDBCollection.findOne(JacksonDBCollection.java:1374) ~[graylog.jar:?] at org.mongojack.JacksonDBCollection.findOne(JacksonDBCollection.java:1335) ~[graylog.jar:?] at org.mongojack.JacksonDBCollection.findOne(JacksonDBCollection.java:1309) ~[graylog.jar:?] at org.graylog2.indexer.indexset.MongoIndexSetService.get(MongoIndexSetService.java:96) ~[graylog.jar:?] at org.graylog2.indexer.indexset.MongoIndexSetService.get(MongoIndexSetService.java:87) ~[graylog.jar:?] at org.graylog2.streams.StreamServiceImpl.getIndexSet(StreamServiceImpl.java:104) ~[graylog.jar:?] at org.graylog2.streams.StreamServiceImpl.getIndexSet(StreamServiceImpl.java:96) ~[graylog.jar:?] at org.graylog2.streams.StreamServiceImpl.loadAll(StreamServiceImpl.java:189) ~[graylog.jar:?] at org.graylog2.streams.StreamServiceImpl.loadAllEnabled(StreamServiceImpl.java:161) ~[graylog.jar:?] at org.graylog2.streams.StreamServiceImpl.loadAllEnabled(StreamServiceImpl.java:155) ~[graylog.jar:?] at org.graylog.plugins.pipelineprocessor.functions.messages.RouteToStream.(RouteToStream.java:49) ~[?:?] at org.graylog.plugins.pipelineprocessor.functions.messages.RouteToStream$$FastClassByGuice$$cc807c18.newInstance() ~[?:?] at com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:89) ~[graylog.jar:?] at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:111) ~[graylog.jar:?] at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90) ~[graylog.jar:?] at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268) ~[graylog.jar:?] at com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:56) ~[graylog.jar:?] at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:1019) ~[graylog.jar:?] at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092) ~[graylog.jar:?] at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1015) ~[graylog.jar:?] at com.google.inject.spi.ProviderLookup$1.get(ProviderLookup.java:104) ~[graylog.jar:?] at com.google.inject.multibindings.MapBinder$RealMapBinder$ValueProvider.get(MapBinder.java:821) ~[graylog.jar:?] at com.google.inject.multibindings.MapBinder$RealMapBinder$RealMapProvider.get(MapBinder.java:605) ~[graylog.jar:?] at com.google.inject.multibindings.MapBinder$RealMapBinder$RealMapProvider.get(MapBinder.java:586) ~[graylog.jar:?] at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81) ~[graylog.jar:?] at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:53) ~[graylog.jar:?] at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:61) ~[graylog.jar:?] at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:45) ~[graylog.jar:?] at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38) ~[graylog.jar:?] at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62) ~[graylog.jar:?] at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:110) ~[graylog.jar:?] at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90) ~[graylog.jar:?] at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268) ~[graylog.jar:?] at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38) ~[graylog.jar:?] at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62) ~[graylog.jar:?] at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:110) ~[graylog.jar:?] at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90) ~[graylog.jar:?] at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268) ~[graylog.jar:?] at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38) ~[graylog.jar:?] at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62) ~[graylog.jar:?] at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:110) ~[graylog.jar:?] at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:90) ~[graylog.jar:?] at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268) ~[graylog.jar:?] at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46) ~[graylog.jar:?] at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092) ~[graylog.jar:?] at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40) ~[graylog.jar:?] at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:194) ~[graylog.jar:?] at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41) ~[graylog.jar:?] at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205) ~[graylog.jar:?] at com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199) ~[graylog.jar:?] at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085) ~[graylog.jar:?] at com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199) ~[graylog.jar:?] at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180) ~[graylog.jar:?] at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110) ~[graylog.jar:?] at com.google.inject.Guice.createInjector(Guice.java:99) ~[graylog.jar:?] at org.graylog2.shared.bindings.GuiceInjectorHolder.createInjector(GuiceInjectorHolder.java:34) ~[graylog.jar:?] at org.graylog2.bootstrap.CmdLineTool.setupInjector(CmdLineTool.java:379) [graylog.jar:?] at org.graylog2.bootstrap.CmdLineTool.run(CmdLineTool.java:193) [graylog.jar:?] at org.graylog2.bootstrap.Main.main(Main.java:44) [graylog.jar:?] |
Seeing the same issue when I upgraded from beta-2 to beta-4. |
Due to the object graph construction in Guice, the migration removing the "default" message field (V20161215163900_MoveIndexSetDefaultConfig) is being run *after* the IndexSetConfig class has been created and some MongoDB queries have been run. Since MongoJack is strict on the document fields, it will thus fail with an error message such as: Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "default" (class org.graylog2.indexer.indexset.AutoValue_IndexSetConfig), not marked as ignorable (17 known properties: "index_optimization_disabled", "index_template_name", "index_wildcard", "index_match_pattern", "rotation_strategy_class", "creation_date", "index_analyzer", "rotation_strategy", "shards", "title", "index_optimization_max_num_segments", "_id", "replicas", "description", "index_prefix", "retention_strategy_class", "retention_strategy"]) at [Source: de.undercouch.bson4jackson.io.LittleEndianInputStream@deadbeef; pos: 683] (through reference chain: org.graylog2.indexer.indexset.AutoValue_IndexSetConfig["default"]) Fixes #3267
Due to the object graph construction in Guice, the migration removing the "default" message field (V20161215163900_MoveIndexSetDefaultConfig) is being run *after* the IndexSetConfig class has been created and some MongoDB queries have been run. Since MongoJack is strict on the document fields, it will thus fail with an error message such as: Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "default" (class org.graylog2.indexer.indexset.AutoValue_IndexSetConfig), not marked as ignorable (17 known properties: "index_optimization_disabled", "index_template_name", "index_wildcard", "index_match_pattern", "rotation_strategy_class", "creation_date", "index_analyzer", "rotation_strategy", "shards", "title", "index_optimization_max_num_segments", "_id", "replicas", "description", "index_prefix", "retention_strategy_class", "retention_strategy"]) at [Source: de.undercouch.bson4jackson.io.LittleEndianInputStream@deadbeef; pos: 683] (through reference chain: org.graylog2.indexer.indexset.AutoValue_IndexSetConfig["default"]) Fixes #3267
seeing the same error with beta-4 2017-01-11T17:58:57.901+01:00 DEBUG [PluginLoader] Creating shared class loader for 1 plugins: [file:/usr/share/graylog-server/plugin/graylog-plugin-pipeline-processor-2.2.0-beta.4.jar] |
@kemijoki beta-6 has not been released (the latest released version is 2.2.0-beta.4). Out of curiosity, where did you see that version? |
yes, I know, it was a mistake, I changed it already :-) |
@kemijoki This is a completely different error and looks like a corrupted JAR file. |
I installed beta-2, this is working fine... Do you have an idea how to "repair" this problem? |
@kemijoki Please don't hijack this issue. We are using GitHub issues for tracking bugs in Graylog itself, but this doesn't look like one. Please post this issue to our public mailing list or join the #graylog channel on freenode IRC. Thank you! |
Error log snippet /var/log/graylog-server/server.log
Current Behavior
The current error is causing the web interface to not accept connections on port 9000.
Steps to Reproduce (for bugs)
apt-get update
thenapt-get install graylog-server
sudo service graylog-server restart
Context
The text was updated successfully, but these errors were encountered: