Well, by "unpredictable" i mean truly unpredictable. You can randomly get seg-faults with no stack trace nor log, 100% CPU sorted only by dirty tricks that totally out of question in production-like environments, etc..
Most of the problems weren't caused by mono alone nor by the app alone. The really buggy behaviors came out with the interaction of the two.
was hoping to hear something more concrete and what you had to do to resolve it (also what finally broke the camel's back to decide to walk away). I realize it could involve a bit of verbage but given the interest in .net openness these days, some real world scrutiny would be beneficial to us interested observers.
What type of app were you running? Website or regular app? Also what version of Mono were you using? I have been running my server app for a few months now on 3.x and had some issues. For example, the default threadpool size is too small, the default implementation of FastCGI on Mono is super slow (there are alternatives out), and the GC behaves a bit differently (nursery size and collection schedule is different). I did have to learn more about the gritty details than when using .NET on Windows but you can fine tune most things. Things are running pretty smooth now though I am still trying to figure out how to debug from a GDB core dump.
Did you mix native and managed code?
Any chance of a blog post about the issues is detail? Would be interested in hearing more.