Bug 5647 - MonoDevelop hangs on quit
Summary: MonoDevelop hangs on quit
Status: RESOLVED FIXED
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: General ()
Version: 3.0.x
Hardware: Macintosh Mac OS
: High major
Target Milestone: ---
Assignee: Bugzilla
URL:
: 1124 6939 7548 ()
Depends on:
Blocks:
 
Reported: 2012-06-14 06:16 UTC by Franklynw
Modified: 2013-08-19 15:46 UTC (History)
5 users (show)

Tags:
Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.


Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:
Status:
RESOLVED FIXED

Description Franklynw 2012-06-14 06:16:11 UTC
Every single time I quit MonoDevelop, it hangs & won't complete the quit - need to Force Quit (usually I do this after 5 minutes or so, to give it a chance). Actually version 3.1, which isn't in the list.
Comment 1 Mikayla Hutchinson [MSFT] 2012-06-15 21:15:21 UTC
I see this too, though not all the time. Here is a backtrace from the hung process. I don't know whether it's a runtime/classlibs bug, but I don't see any non-classlibs managed code running. Zoltan, any ideas?

Thread 6 (process 70024):
#0  0x98ebaf18 in szone_free_definite_size ()
#1  0x98ef5d89 in free ()
#2  0x001ed363 in WaitForMultipleObjectsEx (numobjects=2, handles=0x32e79dc0, waitall=0, timeout=4294967295, alertable=1) at wait.c:634
#3  0x001bbef3 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0x28d66c18, ms=-1, exitContext=0) at threads.c:1616
#3  0x001bbef3 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0x28d66c18, ms=-1, exitContext=0) at threads.c:1616
#4 0x94662fc in  (wrapper managed-to-native) System.Threading.WaitHandle:WaitAny_internal (System.Threading.WaitHandle[],int,bool) + 0x34 (0x94662c8 0x9466336) [0x506e00 - MonoDevelop.exe]
#5 0x9466024 in  System.Threading.WaitHandle:WaitAny (System.Threading.WaitHandle[],System.TimeSpan,bool) + 0x104 (0x9465f20 0x9466080) [0x506e00 - MonoDevelop.exe]
#6 0x9465c90 in  System.Threading.RegisteredWaitHandle:Wait (object) + 0xa8 (0x9465be8 0x9465f11) [0x506e00 - MonoDevelop.exe]
#7 0x554cad in  (wrapper runtime-invoke) <Module>:runtime_invoke_void__this___object (object,intptr,intptr,intptr) + 0x45 (0x554c68 0x554cf6) [0x506e00 - MonoDevelop.exe]
#8  0x0000ecf4 in mono_jit_runtime_invoke (method=0x2abeab4, obj=0x282b1ea8, params=0xb0c02e90, exc=0xb0c02e98) at mini.c:5791
#9  0x00184354 in mono_runtime_invoke (method=0x2abeab4, obj=0x282b1ea8, params=0xb0c02e90, exc=0xb0c02e98) at object.c:2755
#10 0x0018462f in mono_runtime_delegate_invoke (delegate=0x282b1ea8, params=0xb0c02e90, exc=0xb0c02e98) at object.c:3420
#11 0x001b83bf in async_invoke_thread (data=0x293e5fa0) at threadpool.c:626
#12 0x001bd8ec in start_wrapper (data=0x198710a0) at threads.c:784
#13 0x001efa8a in thread_start_routine (args=0x28f8c64) at wthreads.c:287
#14 0x002171d4 in GC_start_routine (arg=0x235ed300) at pthread_support.c:1468
#15 0x98ea0ed9 in _pthread_start ()
#16 0x98ea46de in thread_start ()

Thread 5 (process 70024):
#0  0x9a41db42 in select$DARWIN_EXTSN ()
#1  0x03f7f119 in g_poll ()
#2  0x0462a344 in select_thread_func ()
#3  0x98ea0ed9 in _pthread_start ()
#4  0x98ea46de in thread_start ()

Thread 4 (process 70024):
#0  0x9a41e90a in kevent ()
#1  0x9cf22e10 in _dispatch_mgr_invoke ()
#2  0x9cf2185f in _dispatch_mgr_thread ()

Thread 3 (process 70024):
#0  0x9a41bc5e in semaphore_wait_trap ()
#1  0x001f7eba in mono_sem_wait (sem=0x2c7df0, alertable=1) at mono-semaphore.c:115
#2  0x0012a142 in finalizer_thread (unused=0x0) at gc.c:1066
#3  0x001bd8ec in start_wrapper (data=0x1e62d40) at threads.c:784
#4  0x001efa8a in thread_start_routine (args=0x28f15b8) at wthreads.c:287
#5  0x002171d4 in GC_start_routine (arg=0x502f60) at pthread_support.c:1468
#6  0x98ea0ed9 in _pthread_start ()
#7  0x98ea46de in thread_start ()

Thread 2 (process 70024):
#0  0x9a41bc22 in mach_msg_trap ()
#1  0x9a41b1f6 in mach_msg ()
#2  0x000ee0da in mach_exception_thread (arg=0x0) at mini-darwin.c:129
#3  0x002171d4 in GC_start_routine (arg=0x502f60) at pthread_support.c:1468
#4  0x98ea0ed9 in _pthread_start ()
#5  0x98ea46de in thread_start ()

Thread 1 (process 70024):
#0  0x9a41d83e in __psynch_cvwait ()
#1  0x98ea4e21 in _pthread_cond_wait ()
#2  0x98e5542c in pthread_cond_wait$UNIX2003 ()
#3  0x001da4bf in _wapi_handle_timedwait_signal_handle (handle=0x800, timeout=0x0, alertable=1, poll=0) at handles.c:1655
#4  0x001da592 in _wapi_handle_wait_signal (poll=0) at handles.c:1584
#5  0x001ed281 in WaitForMultipleObjectsEx (numobjects=15, handles=0xbffff3ac, waitall=1, timeout=4294967295, alertable=1) at wait.c:722
#6  0x001bc5d8 in wait_for_tids (wait=0xbffff3ac, timeout=<value temporarily unavailable, due to optimizations>) at threads.c:2748
#7  0x001bf678 in mono_thread_manage () at threads.c:3048
#8  0x00074652 in mono_main (argc=4, argv=0xbffff8fc) at driver.c:1856
#9  0x00001fd6 in start ()
Comment 2 Zoltan Varga 2012-06-16 05:55:56 UTC
Thread 6 is a threadpool thread, and is waiting for something.  Thread 1 is the main thread, and is probably waiting for thread 6 to quit.
Comment 3 Mikayla Hutchinson [MSFT] 2012-06-17 22:22:07 UTC
Yes, but the thread doesn't show any useful managed frames in the trace, how can we track down the culprit?
Comment 4 Jeffrey Stedfast 2012-10-24 19:21:27 UTC
*** Bug 7548 has been marked as a duplicate of this bug. ***
Comment 5 Jeffrey Stedfast 2012-10-24 19:21:53 UTC
*** Bug 6939 has been marked as a duplicate of this bug. ***
Comment 6 Jeffrey Stedfast 2012-10-24 19:22:53 UTC
*** Bug 1124 has been marked as a duplicate of this bug. ***
Comment 7 Jeffrey Stedfast 2012-10-24 19:24:33 UTC
It's possible that not all of these duplicates are hanging in the exact same place, but they are all hanging during quit
Comment 8 Mikayla Hutchinson [MSFT] 2013-08-19 15:46:41 UTC
This seem to have been fixed, please reopen if it's still an issue with the latest release.