Bugs fixed:
The
EscapeString
code carried out escaping by callingstring.Replace
multiple times. This resulted in a performance bottleneck, as for every line a new string was allocated and another was disposed of by the garbage collector. (Bug#45699)A MySQL Connector/NET test program that connected to MySQL Server using the connection string option
compress=true
crashed, but only when running on Mono. The program worked as expected when running on Microsoft Windows.This was due to a bug in Mono. MySQL Connector/NET was modified to avoid using
WeakReferences
in theCompressed
stream class, which was causing the crash. (Bug#45463)If a certain socket exception occurred when trying to establish a MySQL database connection, MySQL Connector/NET displayed an exception message that appeared to be unrelated to the underlying problem. This masked the problem and made diagnosing problems more difficult.
For example, if, when establishing a database connection using TCP/IP, Windows on the local machine allocated an ephemeral port that conflicted with a socket address still in use, then Windows/.NET would throw a socket exception with the following error text:
Only one usage of each socket address (protocol/network address/port) is normally permitted
IP ADDRESS/PORT
.However, MySQL Connector/NET masked this socket exception and displayed an exception with the following text:
Unable to connect to any of the specified MySQL hosts.
The Microsoft Visual Studio solution file
MySQL-VS2005.sln
was invalid. Several projects could not be loaded and thus it was not possible to build MySQL Connector/NET from source. (Bug#44822)The MySQL Connector/NET MySQLRoleProvider reported that there were no roles, even when roles existed. (Bug#44414)
After a Reference to "C:\Program Files\MySQL\MySQL Connector Net 5.2.4\Compact Framework\MySql.Data.CF.dll" was added to a Windows Mobile 5.0 project, the project then failed to build, generating a Microsoft Visual C# compiler error.
The error generated was:
Error 2 The type 'System.Runtime.CompilerServices.CompilerGeneratedAttribute' has no constructors defined MysqlTest Error 3 Internal Compiler Error (0xc0000005 at address 5A7E3714): likely culprit is 'COMPILE'.
MySQL Connector/NET generated the following exception:
System.NullReferenceException: Object reference not set to an instance of an object. bei MySql.Data.MySqlClient.MySqlCommand.TimeoutExpired(Object commandObject) bei System.Threading._TimerCallback.TimerCallback_Context(Object state) bei System.Threading.ExecutionContext.runTryCode(Object userData) bei System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData) bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) bei System.Threading._TimerCallback.PerformTimerCallback(Object state)
When a TableAdapter was created on a DataSet, it was not possible to use a stored procedure with variables. The following error was generated:
The method or operation is not implemented