-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Unknown
-
Affects Version/s: None
-
Component/s: None
-
None
-
None
-
Dotnet Drivers
-
None
-
None
-
None
-
None
-
None
-
None
Thread safety issue: The _discriminatedTypes field gets modified in the RegisterDiscriminator function, which leads to thread safety problems when the IsTypeDiscriminated function accesses the _discriminatedTypes container concurrently:
---> System.FormatException: An error occurred while deserializing the InputSettingDbs field of class InputSettingDb: An error occurred while deserializing the CombinationActions field of class OneDeviceInputSettingDb: Index was outside the bounds of the array.
---> System.FormatException: An error occurred while deserializing the CombinationActions field of class OneDeviceInputSettingDb: Index was outside the bounds of the array.
---> System.IndexOutOfRangeException: Index was outside the bounds of the array.
at System.Collections.Generic.HashSet`1.FindItemIndex(T item)
at System.Collections.Generic.HashSet`1.Contains(T item)
at MongoDB.Bson.Serialization.BsonSerializer.IsTypeDiscriminated(Type type)
at MongoDB.Bson.Serialization.Conventions.StandardDiscriminatorConvention.GetActualType(IBsonReader bsonReader, Type nominalType)
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.Serializers.EnumerableSerializerBase`2.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)