vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Dear newsgroup, I'm having a critical problem with the MySQL Connector .NET 1.0.6. I'm developing a .NET (Version 1.1 SP1) application on a Windows 2000 Professional machine with MySQL Server 4.1.14. A huge SQL query does run for about 40 minutes but then aborts with the exception "Connection unexpectedly terminated". If I comment out some time and memory consuming calculations the query does run a bit further but then also terminates. It seems like there is a relation between the memory used by my application (which constantly grows while it's running) and this problem. I am using a MySqlReader to fetch the results row by row. I found out that if I am using a "classical" MySqlQuery, apply a LIMIT on the SQL and call it several times (with different LIMITs of course), the problem does not occur BUT this is certainly not as high-performance as using a MySqlReader. The bug is registered in the MySQL bug tracking system (http://bugs.mysql.com/bug.php?id=6688) since 17th November of last year (!) and there has been no fix. I also tried MySQL Server 4.1.15 and 5.0.15 -> same problem. I wonder if anyone came across this problem and found a resolution? -- Sincerely Sven Jacobs |
| ||||
| > I'm having a critical problem with the MySQL Connector .NET 1.0.6. I'm > developing a .NET (Version 1.1 SP1) application on a Windows 2000 > Professional machine with MySQL Server 4.1.14. > > [...] I think I found the cause and solution to this problem! I was able to reproduce this bug with the following small piece of C# code: try { // Edit connection settings here! MySqlConnection conn = new MySqlConnection( "server=localhost;user id=xxx;password=yyy;database=zzz;port=3306" ); conn.Open(); // Do a SELECT on a table with many rows here! MySqlCommand cmd = new MySqlCommand( "SELECT * FROM xyz LIMIT 1000", conn ); MySqlDataReader reader = cmd.ExecuteReader(); while ( reader.Read() ) { // Let's sleep for a moment. Important for reproducing the bug! Thread.Sleep( 2400 ); } MessageBox.Show( this, "Done" ); } catch( Exception ex ) { MessageBox.Show( this, ex.Message, "Exception!", MessageBoxButtons.OK, MessageBoxIcon.Error ); } Since the bug seems to be strongly connected to some timeout, I've tried to manipulate several server variables which are related to timeout settings. I found out that if the value of the variable net_write_timeout is increased to 3600 (previously 60) the error does not occur! For further details please see bug report at http://bugs.mysql.com/bug.php?id=6688 -- Sincerely Sven Jacobs |