[Mono-bugs] [Bug 71274][Nor] Changed - finalizer-... tests randomly crash on x86 (Environment.Exit race)

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Tue, 19 Apr 2005 16:19:50 -0400 (EDT)


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 miguel@ximian.com.

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

--- shadow/71274	2005-04-19 11:22:08.000000000 -0400
+++ shadow/71274.tmp.31265	2005-04-19 16:19:50.000000000 -0400
@@ -120,6 +120,37 @@
 Aborted
 
 After a few failing runs, any mono program will die with the same
 assert, which is really bad. Removing ~/.wapi fixes it.
 Also, this has nothing to do with the original bug report, though it
 needs to be fixed to expose the original issue.
+
+------- Additional Comments From miguel@ximian.com  2005-04-19 16:19 -------
+There are two families of problems exposed by the sample above:
+
+* Starvation of handles for the threads, and this is the error that
+displays:
+
+** ERROR **: file handles.c: line 684 (_wapi_replace_handle):
+assertion failed: (new_off != 0)
+aborting...
+Aborted
+
+This corresponds to the following FIXME:
+                old_off = shared_meta->offset;
+                new_off = _wapi_handle_new_shared (type, handle_specific);
+                if (new_off == 0) {
+                        _wapi_handle_collect ();
+                        new_off = _wapi_handle_new_shared (type,
+                                                          
+handle_specific);
+                        /* FIXME: grow the arrays */
+                        g_assert (new_off != 0);
+                }
+
+If you add a printf after "Thread.Start" that will make the program
+work, my guess is that the timing allows for the handle to be properly
+released
+
+* Shutdown problems (maybe fixed by Zoltan's patch) which is the one
+where we get random crashes at shutdown time.
+