NEventStore / NEventStore.Persistence.MongoDB

Mongo Persistence Engine for NEventStore
MIT License
22 stars 26 forks source link

Too much logging when deserialization error occurred #50

Closed alkampfergit closed 7 years ago

alkampfergit commented 7 years ago

If a commit cannot be deserialized, Polling starts sending a high amount of Errors in the log, in the meanwhile the user of the poller has no clue that something wrong is happened and the poller is stuck.

We need

Here is text of exception

Error during polling client System.FormatException: An error occurred while deserializing the Body property of class NEventStore.EventMessage: Element 'XXXXXXX' does not match any field or property of class DMS.Shared.Model.Container.Events.ContainerCreated. ---> System.FormatException: Element 'XXXXXXX' does not match any field or property of class DMS.Shared.Model.Container.Events.ContainerCreated.
   at MongoDB.Bson.Serialization.BsonClassMapSerializer`1.DeserializeClass(BsonDeserializationContext context)
   at MongoDB.Bson.Serialization.BsonClassMapSerializer`1.Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)
   at MongoDB.Bson.Serialization.Serializers.SerializerBase`1.MongoDB.Bson.Serialization.IBsonSerializer.Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)
   at MongoDB.Bson.Serialization.Serializers.ObjectSerializer.DeserializeDiscriminatedValue(BsonDeserializationContext context, BsonDeserializationArgs args)
   at MongoDB.Bson.Serialization.Serializers.ObjectSerializer.Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)
   at MongoDB.Bson.Serialization.Serializers.SerializerBase`1.MongoDB.Bson.Serialization.IBsonSerializer.Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)
   at MongoDB.Bson.Serialization.IBsonSerializerExtensions.Deserialize(IBsonSerializer serializer, BsonDeserializationContext context)
   at MongoDB.Bson.Serialization.BsonClassMapSerializer`1.DeserializeMemberValue(BsonDeserializationContext context, BsonMemberMap memberMap)
   --- End of inner exception stack trace ---
   at MongoDB.Bson.Serialization.BsonClassMapSerializer`1.DeserializeMemberValue(BsonDeserializationContext context, BsonMemberMap memberMap)
   at MongoDB.Bson.Serialization.BsonClassMapSerializer`1.DeserializeClass(BsonDeserializationContext context)
   at MongoDB.Bson.Serialization.BsonClassMapSerializer`1.Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)
   at MongoDB.Bson.Serialization.IBsonSerializerExtensions.Deserialize[TValue](IBsonSerializer`1 serializer, BsonDeserializationContext context)
   at MongoDB.Bson.Serialization.BsonSerializer.Deserialize[TNominalType](BsonDocument document, Action`1 configurator)
   at NEventStore.Persistence.MongoDB.ExtensionMethods.<>c__DisplayClass13.<ToCommit>b__12(BsonValue e) in c:\agents\nes\work\623237454e7de2b5\src\NEventStore.Persistence.MongoDB\ExtensionMethods.cs:line 149
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at NEventStore.Persistence.Commit..ctor(String bucketId, String streamId, Int32 streamRevision, Guid commitId, Int32 commitSequence, DateTime commitStamp, Int64 checkpointToken, IDictionary`2 headers, IEnumerable`1 events)
   at NEventStore.Persistence.MongoDB.ExtensionMethods.ToCommit(BsonDocument doc, IDocumentSerializer serializer) in c:\agents\nes\work\623237454e7de2b5\src\NEventStore.Persistence.MongoDB\ExtensionMethods.cs:line 141
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
   at NEventStore.Persistence.PipelineHooksAwarePersistanceDecorator.<ExecuteHooks>d__3.MoveNext()
   at NEventStore.Client.PollingClient2.InnerPoll()
alkampfergit commented 7 years ago

This is an issue of CommitPollingClient2, so the issue was moved to the core framework.