[Mono-bugs] [Bug 354996] New: Interaction between ResourceManager, worker thread and remoting configuration causes spurious InvalidCastException or NullReferenceException
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Sun Jan 20 15:45:47 EST 2008
https://bugzilla.novell.com/show_bug.cgi?id=354996
Summary: Interaction between ResourceManager, worker thread and
remoting configuration causes spurious
InvalidCastException or NullReferenceException
Product: Mono: Runtime
Version: 1.2.6
Platform: All
OS/Version: All
Status: NEW
Severity: Normal
Priority: P5 - None
Component: misc
AssignedTo: mono-bugs at lists.ximian.com
ReportedBy: rcook at opiumtrail.com
QAContact: mono-bugs at lists.ximian.com
Found By: Development
Created an attachment (id=191120)
--> (https://bugzilla.novell.com/attachment.cgi?id=191120)
Repro sources
This is a strange one. I have a repro (see attachment) but unfortunately I
haven't been able to isolate exactly what's going on. It seems to be a strange
interaction between the following three subsystems:
* A ResourceManager instance
* Adding a struct to a queue and dequeuing it on a worker thread
* Configuring remoting
If I remove any one of these three items from the repro code, then either the
issue goes away or the program crashes in yet another bizarre, and usually
unpredictable, manner.
The main symptom is that a string array that is created in the main thread of
the program is being corrupted or coerced either into the type System.Object[]
or a null reference when referenced in the worker thread resulting in a
spurious InvalidCastException or NullReferenceException.
This code fails reliably in one of three ways:
1. Unhandled Exception: System.InvalidCastException: Cannot cast from source
type to destination type.
at Trac112.Logger+EventRecord.GetArgs () [0x00000]
at Trac112.Logger.WorkerFunction () [0x00000]
2. Unhandled Exception: System.NullReferenceException: Object reference not set
to an instance of an object
at Trac112.Logger+EventRecord.GetArgs () [0x00000]
at Trac112.Logger.WorkerFunction () [0x00000]
3. ** (./Trac112.exe:26870): WARNING **: mono_class_from_mono_type: implement
me 0x43
** ERROR **: file class.c: line 3959 (mono_class_from_mono_type): should not be
reached
aborting...
Abort trap
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list