[Mono-bugs] [Bug 536984] New: Mono Server Exception during debug

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Fri Sep 4 17:22:04 EDT 2009


http://bugzilla.novell.com/show_bug.cgi?id=536984


           Summary: Mono Server Exception during debug
    Classification: Mono
           Product: Mono: Tools
           Version: MonoVS 0.3
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: Normal
          Priority: P5 - None
         Component: VMware Image
        AssignedTo: ajorgensen at novell.com
        ReportedBy: alberto.ferrazzoli at gmail.com
         QAContact: mono-bugs at lists.ximian.com
          Found By: Beta-Customer


Description of Problem:
I was debugging my project on mono VM server with Visual Studio debug option:
stop on every CLR exception.
I knew that the application had to throw an eception and I was waiting the
debugger to alt at the point were the exception was suppose to occur, but the
debugger on VM server crashed.

Steps to reproduce the problem:
1. Start debug a C# project with debugger that stop on every CLR exception
2. When the exception occur the remote mono debugger crashed

Actual Results:
This is the log output by mono server:

[12:58:37:0635830] Using config file:
/usr/lib/monovs-server/monovs-debug-server.exe.config
[12:59:24:8935760] Using config file:
/usr/lib/monovs-server/monovs-debug-server.exe.config
[12:59:51:3809030] Processing UnresolvedVirtuals.exe ...
[12:59:51:5971690] Phase List:
[12:59:51:6560120] Analyzing...
[12:59:51:9513870] Decrypt string method added
[12:59:51:9586950] SuppressIldasmAttribute added
[12:59:51:9673830] BabelObfuscatorAttribute added
[12:59:51:9738830] Building call graph...
[12:59:52:0144820] Running Agent...
[12:59:52:0179840] Task name: Reflected enum types
[12:59:52:0229010] Description: Ignore enum types that are consumed by
reflection methods.
[12:59:52:0532950] Task name: Serializable types
[12:59:52:0560230] Description: Do not obfuscate serializable types.
[12:59:52:0623630] Task name: Reflected type names
[12:59:52:0658230] Description: Discover symbol name string consumed by
reflection methods.
[12:59:52:1080660] Task name: Reflected types
[12:59:52:1150170] Description: Types consumed by reflection methods.
[12:59:52:1365700] Task name: Attribute using type name
[12:59:52:1461040] Description: Ignore symbol type or type name passed to
constructor of specific attributes.
[12:59:52:1651840] Task name: Symbol with attribute
[12:59:52:1716410] Description: Ignore symbols that expose specific attributes.
[12:59:52:1837800] Task name: Types derived
[12:59:52:1905020] Description: Do not obfuscate types that have a specific
base type.
[12:59:52:2061720] Encrypting strings...
[12:59:52:2200650] 'Do {0} + {1}'
[12:59:52:2366340] 'Do(10) != 15'
[12:59:52:2435600] 'Do(100, 200) != 300'
[12:59:52:2498670] Obfuscating msil...
[12:59:52:2971290] Obfuscating names...
[12:59:52:3509020] Error: Object reference not set to an instance of an object
[12:59:52:3671390] Exception: System.NullReferenceException: Object reference
not set to an instance of an object
[12:59:52:3673070]   at System.Xml.XPath.Extensions.XPathSelectElement
(System.Xml.Linq.XNode node, System.String xpath, IXmlNamespaceResolver
nsResolver) [0x0000e] in
/usr/src/packages/BUILD/mono-2.4.2.3/mcs/class/System.Xml.Linq/System.Xml.XPath/Extensions.cs:64 
[12:59:52:3673820]   at System.Xml.XPath.Extensions.XPathSelectElement
(System.Xml.Linq.XNode node, System.String xpath) [0x00000] in
/usr/src/packages/BUILD/mono-2.4.2.3/mcs/class/System.Xml.Linq/System.Xml.XPath/Extensions.cs:58 
[12:59:52:3674390]   at Babel.BabelMap.GetNodeType (Mono.Cecil.TypeDefinition
aggregateType, System.Xml.Linq.XElement& namespaceNode) [0x00045] in
Babel/BabelMap.cs:539 
[12:59:52:3674970]   at Babel.BabelMap.AddTypeSymbol (Mono.Cecil.TypeDefinition
typeDef) [0x00001] in Babel/BabelMap.cs:185 
[12:59:52:3675740]   at Babel.Phases.ObfuscateTypePhase.RenameTypeSymbol
(Mono.Cecil.TypeDefinition typeSymbol, System.String name) [0x00029] in
Babel/Phases/ObfuscateTypePhase.cs:749 
[12:59:52:3951220]   at Babel.Phases.ObfuscateTypePhase.ProcessTypeSymbol
(Mono.Cecil.TypeDefinition typeSymbol) [0x00025] in
Babel/Phases/ObfuscateTypePhase.cs:739 
[12:59:52:3953380]   at Babel.Phases.ObfuscateTypePhase.DoTypeObfuscation
(Mono.Cecil.AssemblyDefinition module) [0x0007e] in
Babel/Phases/ObfuscateTypePhase.cs:458 
[12:59:52:3955290]   at Babel.Phases.ObfuscateTypePhase.DoPhase
(Mono.Cecil.AssemblyDefinition module) [0x0006b] in
Babel/Phases/ObfuscateTypePhase.cs:210 
[12:59:52:3955880]   at Babel.Phase.Execute (Mono.Cecil.AssemblyDefinition
assembly) [0x00016] in Babel/Engine/Phase.cs:63 
[12:59:52:3956520]   at Babel.PhaseList.DoPhase (Mono.Cecil.AssemblyDefinition
assembly) [0x0001c] in Babel/Engine/PhaseList.cs:101 
[12:59:52:3957290]   at Babel.PhaseList.Execute (Mono.Cecil.AssemblyDefinition
assembly) [0x00016] in Babel/Engine/PhaseList.cs:76 
[12:59:52:3957820]   at Babel.Obfuscator.Process () [0x000c7] in
Babel/Obfuscator.cs:385 
[12:59:52:4130920]   at Babel.Program.Main (System.String[] args) [0x00048] in
Babel/Program.cs:33 
[01:01:03:9329470] Using config file:
/usr/lib/monovs-server/monovs-debug-server.exe.config
[01:01:36:5612450] GET BACKTRACE EX: Mono.Debugger.TargetException: The target
is currently running, but it must be stopped to perform the requested
operation.
[01:01:36:5614530]   at Mono.Debugger.Backend.ThreadManager.SendCommand
(Mono.Debugger.Backend.SingleSteppingEngine sse,
Mono.Debugger.TargetAccessDelegate target, System.Object user_data) [0x00089]
in /usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/ThreadManager.cs:259 
[01:01:36:5615320]   at (wrapper remoting-invoke-with-check)
Mono.Debugger.Backend.ThreadManager:SendCommand
(Mono.Debugger.Backend.SingleSteppingEngine,Mono.Debugger.TargetAccessDelegate,object)
[01:01:36:5615900]   at Mono.Debugger.Backend.SingleSteppingEngine.SendCommand
(Mono.Debugger.TargetAccessDelegate target) [0x00030] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:668 
[01:01:36:5616780]   at Mono.Debugger.Backend.SingleSteppingEngine.GetBacktrace
(Mode mode, Int32 max_frames) [0x0001b] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:1849 
[01:01:36:5617330]   at Mono.Debugger.Thread.GetBacktrace (Mode mode, Int32
max_frames) [0x00006] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/classes/Thread.cs:223 
[01:01:36:5617860]   at (wrapper remoting-invoke-with-check)
Mono.Debugger.Thread:GetBacktrace (Mono.Debugger.Backtrace/Mode,int)
[01:01:36:5618390]   at Mono.VisualStudio.Mdb.ServerThread.GetBacktrace
(BacktraceFlags flags) [0x00000] in
/usr/src/packages/BUILD/monovs-server-0.3/MonoVS.DebugServer/ServerThread.cs:74 
[01:01:36:5618970]   at
Mono.VisualStudio.Mdb.ServerThread.Mono.VisualStudio.Mdb.IServerThread.GetBacktrace
(BacktraceFlags flags) [0x00000] in
/usr/src/packages/BUILD/monovs-server-0.3/MonoVS.DebugServer/ServerThread.cs:40 
[01:01:41:6410150] GET BACKTRACE EX: Mono.Debugger.TargetException: The target
is currently running, but it must be stopped to perform the requested
operation.
[01:01:41:6412420]   at Mono.Debugger.Backend.ThreadManager.SendCommand
(Mono.Debugger.Backend.SingleSteppingEngine sse,
Mono.Debugger.TargetAccessDelegate target, System.Object user_data) [0x00089]
in /usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/ThreadManager.cs:259 
[01:01:41:6413210]   at (wrapper remoting-invoke-with-check)
Mono.Debugger.Backend.ThreadManager:SendCommand
(Mono.Debugger.Backend.SingleSteppingEngine,Mono.Debugger.TargetAccessDelegate,object)
[01:01:41:6420390]   at Mono.Debugger.Backend.SingleSteppingEngine.SendCommand
(Mono.Debugger.TargetAccessDelegate target) [0x00030] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:668 
[01:01:41:6421190]   at Mono.Debugger.Backend.SingleSteppingEngine.GetBacktrace
(Mode mode, Int32 max_frames) [0x0001b] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:1849 
[01:01:41:6421730]   at Mono.Debugger.Thread.GetBacktrace (Mode mode, Int32
max_frames) [0x00006] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/classes/Thread.cs:223 
[01:01:41:6422270]   at (wrapper remoting-invoke-with-check)
Mono.Debugger.Thread:GetBacktrace (Mono.Debugger.Backtrace/Mode,int)
[01:01:41:6422810]   at Mono.VisualStudio.Mdb.ServerThread.GetBacktrace
(BacktraceFlags flags) [0x00000] in
/usr/src/packages/BUILD/monovs-server-0.3/MonoVS.DebugServer/ServerThread.cs:74 
[01:01:41:6423450]   at
Mono.VisualStudio.Mdb.ServerThread.Mono.VisualStudio.Mdb.IServerThread.GetBacktrace
(BacktraceFlags flags) [0x00000] in
/usr/src/packages/BUILD/monovs-server-0.3/MonoVS.DebugServer/ServerThread.cs:40 
[01:01:41:7994690] GET BACKTRACE EX: Mono.Debugger.TargetException: The target
is currently running, but it must be stopped to perform the requested
operation.
[01:01:41:7996950]   at
Mono.Debugger.Backend.SingleSteppingEngine+<GetBacktrace>c__AnonStorey8.<>m__C
(Mono.Debugger.Thread , System.Object ) [0x000be] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:1867 
[01:01:41:7997600]   at
Mono.Debugger.Backend.SingleSteppingEngine+<Invoke>c__AnonStorey1D.<>m__22
(Mono.Debugger.Thread , System.Object ) [0x00000] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:2075 
[01:01:41:7998170]   at Mono.Debugger.Backend.SingleSteppingEngine.SendCommand
(Mono.Debugger.TargetAccessDelegate target) [0x00022] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:666 
[01:01:41:7998950]   at Mono.Debugger.Backend.SingleSteppingEngine.Invoke
(Mono.Debugger.TargetAccessDelegate func, System.Object data) [0x0001b] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:2074 
[01:01:41:7999520]   at Mono.Debugger.Backend.ThreadManager.engine_thread_main
() [0x00154] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/ThreadManager.cs:359 
[01:01:41:8318220] GET BACKTRACE EX: Mono.Debugger.TargetException: The target
is currently running, but it must be stopped to perform the requested
operation.
[01:01:41:8327050]   at
Mono.Debugger.Backend.SingleSteppingEngine+<GetBacktrace>c__AnonStorey8.<>m__C
(Mono.Debugger.Thread , System.Object ) [0x000be] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:1867 
[01:01:41:8328150]   at
Mono.Debugger.Backend.SingleSteppingEngine+<Invoke>c__AnonStorey1D.<>m__22
(Mono.Debugger.Thread , System.Object ) [0x00000] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:2075 
[01:01:41:8328740]   at Mono.Debugger.Backend.SingleSteppingEngine.SendCommand
(Mono.Debugger.TargetAccessDelegate target) [0x00022] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:666 
[01:01:41:8329270]   at Mono.Debugger.Backend.SingleSteppingEngine.Invoke
(Mono.Debugger.TargetAccessDelegate func, System.Object data) [0x0001b] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:2074 
[01:01:41:8332550]   at Mono.Debugger.Backend.ThreadManager.engine_thread_main
() [0x00154] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/ThreadManager.cs:359 
[01:01:43:7022890] EXCEPTION: System.InvalidOperationException: Operation is
not valid due to the current state of the object
[01:01:43:7024540]   at
Mono.VisualStudio.Mdb.ServerProcess.OnExceptionCatchPoint (System.String name,
Mono.Debugger.ExceptionAction& action) [0x00065] in
/usr/src/packages/BUILD/monovs-server-0.3/MonoVS.DebugServer/ServerProcess.cs:119 
[01:01:43:7025220]   at Mono.Debugger.Process.GenericExceptionCatchPoint
(System.String exception, Mono.Debugger.ExceptionAction& action) [0x0000b] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/classes/Process.cs:221 
[01:01:43:7026490]   at (wrapper remoting-invoke-with-check)
Mono.Debugger.Process:GenericExceptionCatchPoint
(string,Mono.Debugger.ExceptionAction&)
[01:01:43:7027460]   at
Mono.Debugger.Backend.SingleSteppingEngine.throw_exception (TargetAddress
stack, TargetAddress exc, TargetAddress ip) [0x0009d] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:1040 
[01:01:43:7028070]   at Mono.Debugger.Backend.SingleSteppingEngine.ProcessEvent
(Mono.Debugger.Backend.ChildEvent cevent) [0x00349] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:243 
[01:01:43:7028650]   at Mono.Debugger.Backend.SingleSteppingEngine.ProcessEvent
(Int32 status) [0x0000c] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/SingleSteppingEngine.cs:155 
[01:01:43:7029220]   at (wrapper remoting-invoke-with-check)
Mono.Debugger.Backend.SingleSteppingEngine:ProcessEvent (int)
[01:01:43:7029820]   at Mono.Debugger.Backend.ThreadManager.engine_thread_main
() [0x000cd] in
/usr/src/packages/BUILD/mono-debugger-2.4.2.1/backend/ThreadManager.cs:333 


Expected Results:
The Visual Studio debugger halt and show the line of code were the exception
occurred.

How often does this happen? 
always on my project, but I never test with another project.

Additional Information:
The mono server virtual machine run on VMWare

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the mono-bugs mailing list