If you are getting an unexpected “Nested transactions are not supported” exception from your MySql database then you may have hit this bug.
I firstly suspected Spring.NET, then the MySql ADO.NET driver. We scratched our heads for a couple of days on this one before I found that bug report.
To make a long story short, simply commenting out the query_cache_size option in the my.ini file solved it. What effect this will have on performance I haven’t determined yet.