Bugs fixed:
Calling
GetSchema()onIndexesorIndexColumnsfailed where index or column names were restricted.In
SchemaProvider.cs, methodsGetIndexes()andGetIndexColumns()passed their restrictions directly toGetTables(). This only worked if the restrictions were no more specific thanschemaNameandtableName. IfIndexNamewas given, this was passed toGetTables()where it was treated asTableType. As a result no tables were returned, unless the index name happened to beBASE TABLEorVIEW. This meant that both methods failed to return any rows. (Bug#43991)The
DATETIMEformat 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) 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)If, when using the
MySqlTransactiontransaction 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 TINYINTin the parameter list, the complete query and data that should be inserted is corrupted and no error is thrown. (Bug#37968)Calling
MySqlDataAdapter.FillSchemaon aSELECTstatement that referred to a table that did not exist left the connection in a bad state. After this call, allSELECTstatements returned an empty result set. If theSELECTstatement referred to a table that did exist then everything worked as expected. (Bug#30518)