-
The
IgnorePrepare
connection-string option was deprecated in the Connector/NET 8.0.23 release and removed in the Connector/NET 8.0.24 release.The removed option instructed Connector/NET to ignore all calls to
MySqlCommand.Prepare()
that were made using the classic MySQL protocol. (Bug #31872906)
-
Improved server disconnection handling of an X Protocol connection now creates a log entry and returns an error message, as needed, after Connector/NET receives a connection-close notice from the server. Connector/NET detects three new types of warning notices.
Connection idle notice. This notice applies to a server connection that remains idle for longer than the relevant timeout setting. Connector/NET closes the connection when it receives the notice in an active session or while a new session is being created. An attempt to use the invalid session returns the “
Connection closed. Reason: connection idle too long
” error message.Server shutdown notice. If a connection-close notice is received in a session as a result of a server shutdown, Connector/NET terminates the session with the "
Connection closed. Reason: server shutdown
" error message. All other sessions that are connected to the same endpoint are removed from the pool, if connection pooling is used.Connection killed notice. If the connection being killed from another client session, Connector/NET closes the connection when it receives the notice in an active session or while a new session is being created. An attempt to use the invalid session returns the “
Connection closed. Reason: connection killed by a different session
” error message.(WL #14208)
If a classic MySQL protocol connection experiences a server timeout, Connector/NET now reports more precise disconnection information to affected .NET applications when the server provides improved error messages. (WL #14393)
Previously, Connector/NET added client support for the MySQL Enterprise Edition SASL LDAP authentication plugin with
SCRAM-SHA-1
andSCRAM-SHA-256
as authentication methods. Connector/NET now also supportsGSSAPI/Kerberos
as an alternative authentication method for classic MySQL protocol connections. SASL-based LDAP authentication does not apply to .NET applications running macOS. (WL #14210)The SSH Tunneling (port forwarding) feature, which was added to support MySQL products in making secure connections on Windows, is no longer needed by other products. Now, using an alternative such as Oracle Cloud Infrastructure or SSH.NET to create a tunnel is preferred. The related connection options (
SshHostName
,SshKeyFile
,SshPassPhrase
,SshPassword
,SshPort
, andSshUserName
) are no longer valid when making Connector/NET connections, starting with this release. (WL #14562)
Pound symbols in JSON columns were interpreted improperly when using accent-sensitive collation. (Bug #32429236)
Several data types could not be mapped by running
Scaffold-DbContext
on valid MySQL tables. This fix upgrades Microsoft Entity Framework libraries to the latest and also adds all previously excluded mappings to the EFCore and EFCore5 projects. (Bug #32424742, Bug #102381)Constructing a regular expression for each read diminished the performance of Connector/NET. This fix limits the construction to one instance, which now is reused. (Bug #32386454, Bug #101714)
Incomplete GUID mapping in the Entity Framework Core implementation caused an error when the
Contains
method was used to filter records. (Bug #32173133, Bug #93398)Additional error codes now prevent unexpected exceptions after a query. Thanks to Stanislav Revin for the patch. (Bug #32150115, Bug #101592)
An exception was thrown if any
CHAR(36)
columns containing aNULL
value were referenced in a query. New validation now checks forNULL
values when theMySqlDbType
member isGuid
. (Bug #32049837, Bug #101252)