MySQL Connector/NET Release Notes  /  Changes in MySQL Connector/Net 5.1  /  Changes in MySQL Connector/NET 5.1.8 (Not released)

Changes in MySQL Connector/NET 5.1.8 (Not released)

Bugs Fixed

  • Calling GetSchema() on Indexes or IndexColumns failed where index or column names were restricted.

    In SchemaProvider.cs, methods GetIndexes() and GetIndexColumns() passed their restrictions directly to GetTables(). This only worked if the restrictions were no more specific than schemaName and tableName. If IndexName was given, this was passed to GetTables() where it was treated as TableType. As a result no tables were returned, unless the index name happened to be BASE TABLE or VIEW. This meant that both methods failed to return any rows. (Bug #43991)

  • The DATETIME format contained an erroneous space. (Bug #41021)

  • If connection pooling was not set explicitly in the connection string, MySQL Connector/NET added ;Pooling=False to the end of the connection string when MySqlCommand.ExecuteReader() was called.

    If connection pooling was explicitly set in the connection string, when MySqlConnection.Open() was called it converted Pooling=True to pooling=True.

    If MySqlCommand.ExecuteReader() was subsequently called, it concatenated ;Pooling=False to the end of the connection string. The resulting connection string was thus terminated with pooling=True;Pooling=False. This disabled connection pooling completely. (Bug #40091)

  • 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)
          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)

    (Bug #40005)

  • If, when using the MySqlTransaction transaction object, an exception was thrown, the transaction object was not disposed of and the transaction was not rolled back. (Bug #39817)

  • When a prepared insert query is run that contains an UNSIGNED TINYINT in the parameter list, the complete query and data that should be inserted is corrupted and no error is thrown. (Bug #37968)

  • Calling MySqlDataAdapter.FillSchema on a SELECT statement that referred to a table that did not exist left the connection in a bad state. After this call, all SELECT statements returned an empty result set. If the SELECT statement referred to a table that did exist then everything worked as expected. (Bug #30518)