Bug 13911 - 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: _flushDisableCount > 0'
Summary: 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying...
Status: RESOLVED INVALID
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: General ()
Version: Trunk
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: master
Assignee: Cody Russell
URL:
Depends on:
Blocks:
 
Reported: 2013-08-11 18:50 UTC by Brian Berry
Modified: 2013-08-12 23:59 UTC (History)
1 user (show)

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


Attachments
Full crash log contents for another encounter. (92.07 KB, text/plain)
2013-08-12 00:01 UTC, Brian Berry
Details


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 INVALID

Description Brian Berry 2013-08-11 18:50:15 UTC
Found: When performing simple command-K builds (e.g. when iterating on a module), the IDE crashes with moderate frequency with the following:

Process:         XamarinStudio [46780]
Path:            /Applications/Xamarin Studio.app/Contents/MacOS/XamarinStudio
Identifier:      com.xamarin.monodevelop
Version:         4.1.9.6 (4.1.9.6)
Code Type:       X86 (Native)
Parent Process:  launchd [144]
User ID:         501

Date/Time:       2013-08-11 15:31:11.379 -0700
OS Version:      Mac OS X 10.8.4 (12E55)
Report Version:  10

Interval Since Last Report:          59359 sec
Crashes Since Last Report:           3460
Per-App Interval Since Last Report:  74652 sec
Per-App Crashes Since Last Report:   6

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000

Application Specific Information:
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: _flushDisableCount > 0'

. . .

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.CoreFoundation      	0x96fda6a7 ___TERMINATING_DUE_TO_UNCAUGHT_EXCEPTION___ + 7
1   libobjc.A.dylib               	0x95e2052e objc_exception_throw + 230
2   com.apple.CoreFoundation      	0x96f39698 +[NSException raise:format:arguments:] + 136
3   com.apple.Foundation          	0x95f43364 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 116
4   com.apple.AppKit              	0x937689a0 -[NSWindowGraphicsContext reenableFlush] + 146
5   com.apple.AppKit              	0x93768908 -[NSWindow enableFlushWindow] + 58
6   libgdk-quartz-2.0.0.dylib     	0x0442ef6b _gdk_windowing_after_process_all_updates + 155
7   libgdk-quartz-2.0.0.dylib     	0x0440594f gdk_window_process_all_updates + 319
8   libgtk-quartz-2.0.0.dylib     	0x03ef5742 gtk_container_idle_sizer + 114
9   libgdk-quartz-2.0.0.dylib     	0x043cdb1e gdk_threads_dispatch + 94
10  libglib-2.0.0.dylib           	0x03d4a8d0 g_idle_dispatch + 96
11  libglib-2.0.0.dylib           	0x03d479b9 g_main_dispatch + 409
12  libglib-2.0.0.dylib           	0x03d48780 g_main_context_dispatch + 48
13  libglib-2.0.0.dylib           	0x03d48975 g_main_context_iterate + 485
14  libglib-2.0.0.dylib           	0x03d48eaf g_main_loop_run + 527
15  libgtk-quartz-2.0.0.dylib     	0x03fb38d0 gtk_main + 240
16  ???                           	0x100505f8 0 + 268764664
17  ???                           	0x100505bc 0 + 268764604
18  ???                           	0x1005059c 0 + 268764572
19  ???                           	0x03becad0 0 + 62835408
20  ???                           	0x000ef064 0 + 979044
21  ???                           	0x000eedfc 0 + 978428
22  ???                           	0x000eeec2 0 + 978626
23  libmonosgen-2.0.dylib         	0x0100d805 mono_jit_runtime_invoke + 741 (mini.c:6438)
24  libmonosgen-2.0.dylib         	0x011c4a2e mono_runtime_invoke + 126 (object.c:2827)
25  libmonosgen-2.0.dylib         	0x011c8fa4 mono_runtime_exec_main + 420 (object.c:4052)
26  libmonosgen-2.0.dylib         	0x011c9315 mono_runtime_run_main + 725 (object.c:3678)
27  libmonosgen-2.0.dylib         	0x01078285 mono_jit_exec + 149 (driver.c:945)
28  libmonosgen-2.0.dylib         	0x0107a7bf mono_main + 9519 (driver.c:1980)
29  com.xamarin.monodevelop       	0x00003817 main + 2503
30  com.xamarin.monodevelop       	0x00001ce5 start + 53


Notes:
   * This isn't unique to this version---it has been happening for a while (perhaps as long as I've been using the software).
   * There is never any environment corruption or other negative consequence beyond the annoyance of having to relaunch/reload/rebuild.  (not a blocker for progress)

I'll try and further isolate repro steps, but wanted to at least get an initial report filed.
Many thanks, everybody.
Comment 1 Mikayla Hutchinson [MSFT] 2013-08-11 20:20:41 UTC
Are there GTK symbols in any of the other threads?
Comment 2 Brian Berry 2013-08-12 00:01:34 UTC
Created attachment 4604 [details]
Full crash log contents for another encounter.

Apologies for not sending a full log before---attached is a log for another run this evening that encountered the issue.   Please let me know if there is anything else useful I can provide (I will be working on divining what might do so with 100% frequency).

Cheers,
Brian
Comment 3 Brian Berry 2013-08-12 21:17:29 UTC
NOTE:  This could actually be the result of GTK access from the wrong thread within an add-in that's in the mix.   Suggest no time spent on your end until we've ruled that out.  I will update asap.
Comment 4 Brian Berry 2013-08-12 23:59:34 UTC
Confirmed.   Temporary project modifications (intended, part of addin purpose) were occurring off the gui thread, in fact.  These are now invoked via delegate blocks to DispatchService.GuiSyncDispatch() and (fingers crossed) so far so good.

Apologies for the false alarm, folks.