MySQL Connector/NET Release Notes  /  Changes in MySQL Connector/Net 6.1  /  Changes in MySQL Connector/NET 6.1.5 (2010-08-30)

Changes in MySQL Connector/NET 6.1.5 (2010-08-30)

This release fixes bugs since 6.1.4.

Bugs Fixed

  • The calculation of lockAge in the Session Provider sometimes generated a System.Data.SqlTypes.SqlNullValueException. (Bug #55701)

  • Attempting to read Double.MinValue from a DOUBLE column in MySQL table generated the following exception:

    System.OverflowException : Value was either too large or too small for a Double.
    at System.Number.ParseDouble(String value, NumberStyles options, NumberFormatInfo
    at MySql.Data.Types.MySqlDouble.MySql.Data.Types.IMySqlValue.ReadValue(MySqlPacket
    packet, Int64 length, Boolean nullVal)
    at MySql.Data.MySqlClient.NativeDriver.ReadColumnValue(Int32 index, MySqlField field,
    IMySqlValue valObject)
    at MySql.Data.MySqlClient.ResultSet.ReadColumnData(Boolean outputParms)
    at MySql.Data.MySqlClient.ResultSet.NextRow(CommandBehavior behavior)
    at MySql.Data.MySqlClient.MySqlDataReader.Read()

    (Bug #55644)

  • If using MySQL Server 5.0.x it was not possible to alter stored routines in Visual Studio. If the stored routine was clicked, and the context sensitive menu option, Alter Routine, selected, the following error was generated:

    Unable to load object with error: Object reference not
    set to an instance of an object

    (Bug #55170)

  • MySqlDataAdapter.Update() generated concurrency violations for custom stored procedure driven update commands that used UpdateRowSource.FirstReturnedRecord. (Bug #54895)

  • Several calls to DataAdapter.Update() with intervening changes to DataTable resulted in ConcurrencyException exceptions being generated. (Bug #54863)

  • The icon for the MySQL Web Configuration Tool was not displayed in Visual Studio for Web Application Projects. (Bug #54571)

  • The MySqlHelper object did not have an overloaded version of the ExecuteReader method that accepted a MySqlConnection object. (Bug #54570)

  • If MySqlDataAdapter was used with an INSERT command where the VALUES clause contained an expression with parentheses in it, and set the adapter.UpdateBatchSize parameter to be greater than one, then the call to adapter.Update either generated an exception or failed to batch the commands, executing each insert individually. (Bug #54386)

  • The method MySql.Data.Common.QueryNormalizer.CollapseValueList generated an ArgumentOutOfRangeException. (Bug #54152, Bug #53865)

  • Garbage Collector disposal of a MySqlConnection object caused the following exception:

    System.IO.EndOfStreamException: Attempted to read past the end of the stream.
    MySql.Data.MySqlClient.MySqlStream.ReadFully(Stream stream, Byte[] buffer, Int32 offset,
    Int32 count)
    Outer Exception Reading from the stream has failed.

    (Bug #53457)

  • MySQL Connector/NET did not throw an EndOfStreamException exception when net_write_timeout was exceeded. (Bug #53439)

  • After a timeout exception, if an attempt was made to reuse a connection returned to the connection pool the following exception was generated:

    [MySqlException (0x80004005): There is already an open DataReader associated with this
    Connection which must be closed first.]
       MySql.Data.MySqlClient.MySqlCommand.CheckState() +278
       MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior) +43
       MySql.Data.MySqlClient.MySqlCommand.ExecuteReader() +6
       Controls.SimpleCommand.ExecuteReader(String SQL) in ...:323
       Albums.GetImagesByAlbum(SimpleCommand Cmd, Int32 iAlbum, String Order, String Limit)
    in ...:13
       Forecast.Page_Load(Object sender, EventArgs e) in ...:70
       System.Web.UI.Control.OnLoad(EventArgs e) +99
       System.Web.UI.Control.LoadRecursive() +50
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean
    includeStagesAfterAsyncPoint) +627

    (Bug #53357)

  • Membership schema creation failed if the default schema collation was not Latin1. (Bug #53174)

  • EventLog was not disposed in the SessionState provider. (Bug #52550)

  • CHAR(36) columns were not recognized as GUIDs when used in views with entity models. (Bug #52085)

  • Stored procedure enumeration code generated an error if a procedure was used in a dataset that did not return any resultsets. (Bug #50671)

  • When an application was subjected to increased concurrent load, MySQL Connector/NET generated the following error when calling stored procedures:

    A DataTable named \'Procedure Parameters\'
    already belongs to this DataSet.

    (Bug #49118)

  • In the ADO.NET Entity Data Model Wizard, the time to update a model scaled abnormally as the number of entities increased. (Bug #48791, Bug #12596237)

  • The INSERT command was significantly slower with MySQL Connector/NET 6.x compared to 5.x, when compression was enabled. (Bug #48243)

  • When the connection string option Connection Reset = True was used, a connection reset used the previously used encoding for the subsequent authentication operation. This failed, for example, if UCS2 was used to read the last column before the reset. (Bug #47153)

  • Opening a connection in the Visual Studio Server Explorer and choosing to alter an existing routine required another authentication at the server. (Bug #44715)

  • When batching was used in MySqlDataAdapter, a connection was not opened automatically in MySqlDataAdapter.Update(). This resulted in an InvalidOperationException exception being generated, with the message text connection must be valid and open.

    MySQL Connector/NET has been changed to behave more like SQL Server: if the connection is closed, it is opened for the duration of update operation. (Bug #38411)

  • Database name was emitted into typed datasets. This prevented users using the configured default database. (Bug #33870)