Closed sharpjs closed 2 years ago
Thanks for the diagnosis. 6.3.11 will have a fix for this (as much as I could reproduce)
The application in question has been updated to use a private build of Insight.Database that is v6.3.10 + your fix 9e871bf7bd2a89fdbf87b490647fdf0452fa3e63. I'll report back in a day or two with results.
So far, neither I nor a colleague have been able to reproduce this, but telemetry indicates that some users have been hitting it several times a day.
Yes, this fix fixed it for the application in question.
Closing.
Describe the bug
While on call for an application that uses Insight.Database, I observed an
ArgumentNullException
thrown fromDynamicILGenerator.Emit
as invoked from Insight:Here is the stack trace, with unrelated parts (my app, async cruft) removed:
Steps to reproduce
I'm unsure how the application got there and not sure how much bandwidth I have for further research, but I can point to exactly where and why the exception was thrown from Insight's point of view. I have confirmed this by inspecting a debug snapshot taken at the time of the exception.
The exception is thrown on this line because
deserializers[i]
isnull
.deserializers
is produced byCreateDeserializersForSubObjects
, which in turn usesCreateValueDeserializer
and/orCreateClassDeserializerDynamicMethod
.CreateValueDeserializer
cannot produce a null deserializer.CreateClassDeserializerDynamicMethod
can produce a null deserializer via this null return. In fact, that's the only possibility for a null deserializer. It must be the culprit.Expected behavior
A few options come to mind:
No exception thrown, or some exception thrown that tells me what I've done wrong.
net48