MySQL Connector/NET Release Notes  /  Changes in MySQL Connector/Net 6.6  /  Changes in MySQL Connector/NET 6.6.6 (2013-08-20, General Availability)

Changes in MySQL Connector/NET 6.6.6 (2013-08-20, General Availability)

Bugs Fixed

  • Executing a LINQ query containing an order by clause and a call to the Contains method using the Take method resulted in a bad SQL query, which made reference to a no-existent alias. (Bug #17194945, Bug #69751)

  • When using Entity Framework 5.0, some string patterns in a LINQ query caused MySQL to throw syntax errors when they were passed to the Contains(), StartsWith(), or EndsWith() methods. (Bug #16974405, Bug #69409)

  • The LINQ query would return the error "An error of "Unknown column 'Distinct1.nCdSite' in 'where clause'" when using Distinct().Count(). (Bug #16950146, Bug #68513)

  • When the IIS application pool reset the worker processes at a specific time, the MySQL session state store would crash the w3wp.exe process and the request resulted in a crash error message. There are no longer ASP.NET crash yellow pages or bad exceptions. Session expiration is now handled properly. (Bug #16909237, Bug #67665)

  • When using Entity Framework 4.3.1 and Code First Migrations, databases were migrated more than once. This fix stops the problem by changing the CreatedOn column in the migration history table to use the 24-hour time format. (Bug #16869202, Bug #68889)

  • Connector/NET threw a fatal error when trying to read a MySQL table that used the UTF-16 or UTF-32 character set. Mappings for UTF-16 and UTF-32 encodings have now been added. (Bug #16776818, Bug #69169)

  • An "DBUpdateException saving changes" exception was thrown while inserting data that had Identify columns. The data is now stored in the table.

    A workaround was to set global sql_mode = "ANSI";. (Bug #16494585)

  • After opening a stored routine in the SQL Editor in Visual Studio and then changing its name, an error occurred with the message "Unable to load the stored procedure for editing" at the attempt to save the routine. (Bug #16390757)

  • When running a multithreaded service, you might receive the exception:

    The given key was not present in the dictionary

    The issue was fixed by enhancing the locking code within the ConnectionStringBuilder class. (Bug #16310698, Bug #68217)

  • When using EntityFramework 4.3 and Code First, generated foreign key identifiers could be longer than 64 characters, causing MySQLException errors. The fix renames any too-long identifiers using the name format FK_guid, where guid is a global unique identifier generated at runtime. (Bug #16286397, Bug #67285)

  • Connector/NET would throw a MySqlException exception when an invalid collection was passed to the GetSchema method. Now it throws an ArgumentException when an invalid collection name is passed to GetSchema, to be compliant with the API spec of System.Data.Common.DbConnection.GetSchema. The new behavior provides better compatibility with other data access providers such as ADO.NET. (Bug #16271425, Bug #67901)

  • When using Entity Frameworks: Code First in Visual Studio 2012 and using a GUID as the primary key in a class, the following error could occur:

    Incorrect column specifier for column 'column_name'.

    Connector/NET was applying the AUTO_INCREMENT attribute to the column, which requires that the column use an integer data type. (Bug #15834176, Bug #67450)

  • Specifying the Default Command Timeout option in a connection string used with the MySQL Entity Framework provider had no effect. The command timeout was always 30 seconds. (Bug #14825670, Bug #67171)

  • A System.InvalidCastException exception could occur when calling a stored function. A workaround was to specify the CheckParameters=false connection option. (Bug #13864627, Bug #64633)

  • Sometimes data was not returned when a socket connection was slow, interrupted, or delayed. The timeout is now properly reported as an error to the upper layers. (Bug #69039, Bug #16950212)

  • Using a nested projection causes a malformed query to be created, and spurious data to be returned. (Bug #67183, Bug #16872852)

  • Generated "LINQ to Entities" queries are no longer as nested. In other words, two similar queries with one nested inside the other are now flattened into a simple query. This provides better performance for large result sets. (Bug #65723, Bug #16973939)

  • An exception was thrown when populating DataTable with query fields containing a UNIQUE index or constraint NULL. There is no longer an exception thrown, and the DataTable.Fill method terminates correctly (filling the data). (Bug #65065, Bug #16952323)