[Mono-bugs] [Bug 73619][Cri] New - mod_mono does not recover when the system is busy or mod-mono-server fails to quit

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Fri, 11 Mar 2005 19:23:48 -0500 (EST)


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by rlyon@novell.com.

http://bugzilla.ximian.com/show_bug.cgi?id=73619

--- shadow/73619	2005-03-11 19:23:48.000000000 -0500
+++ shadow/73619.tmp.8434	2005-03-11 19:23:48.000000000 -0500
@@ -0,0 +1,54 @@
+Bug#: 73619
+Product: Mono: Tools
+Version: 1.1
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Critical
+Component: mod_mono
+AssignedTo: gonzalo@ximian.com                            
+ReportedBy: rlyon@novell.com               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL: 
+Cc: jpallen@novell.com,mlasky@novell.com
+Summary: mod_mono does not recover when the system is busy or mod-mono-server fails to quit
+
+mod_mono does not recover on a roll (killall -HUP httpd2-worker) when the
+system is busy or mod-mono-server fails to quit.
+
+if mod-mono-server does not come down quick enough because of a busy system
+or the mod-mono-server fails to exit (see below) the system does not recover.
+
+the child inits are happening before the mod-mono-server quits and the
+worker threads do not start mod-mono-server later.
+
+we have a busy server (with 200 clients) the first roll of Apache (killall
+-HUP httpd2-worker) usually works, but the second usually fails.  on the
+second roll mod-mono-server throws:
+
+Unhandled Exception: System.NullReferenceException: Object reference not
+set to an instance of an object
+
+which we see in the error_log file. I have been unable to determine who is
+throwing this exception, but at this point mod-mono-server fails to exit. 
+because of the hash lock file, it will not be started again.
+
+there are a number of ways to address these issues. for robustness, I think
+we should start by tightenting the starting of mod-mono-server using a lock
+file or mutex in mod_mono and remove the hash lock in the mod-mono-server.
+ I think we need to support starting a new mod-mono-server comming up even
+if the old mod-mono-server has become defunct (or possible force a kill
+before starting again).
+
+Q: how do you see the WebTracing in mod-mono-server, when running mod_mono?
+ where does the output from mod-mono-server behind mod_mono go?
+
+I am not sure who is throwing "Unhandled Exception" or why mod-mono-server
+does not continue exit after it is thrown.  The main runner thread (the
+only non-background thread) appears to have been aborted successfully.
+
+I know this is complex, but we are excited to be at this performance point
+with Mono.