MySQL Connector/NET Release Notes

2.3 Changes in MySQL Connector/NET 8.0.16 (2019-04-25, General Availability)

Functionality Added or Changed

  • Document Store: Support was added for the -> operator to be used with JSON document paths in relational statements. For example:

    table.Select().Where("additionalinfo->$.hobbies = 'Reading'");
    

    (Bug #29347028)

  • Document Store: The performance for statements that are executed repeatedly (two or more times) is improved by using server-side prepared statements for the second and subsequent executions. This happens internally; applications need take no action and API behavior should be the same as previously. For statements that change, repreparation occurs as needed. Providing different data values or different OFFSET or LIMIT clause values does not count as a change. Instead, the new values are passed to a new invocation of the previously prepared statement.

  • Document Store: Connector/NET now supports the ability to send connection attributes (key-value pairs that application programs can pass to the server at connect time). Connector/NET defines a default set of attributes, which can be disabled or enabled. In addition, applications can specify attributes to be passed together with the default attributes. The default behavior is to send the default attribute set.

    The aggregate size of connection attribute data sent by a client is limited by the value of the performance_schema_session_connect_attrs_size server variable. The total size of the data package should be less than the value of the server variable. For X DevAPI applications, specify connection attributes as a connection-attributes parameter in a connection string. For usage information, see Options for X Protocol Only.

    For general information about connection attributes, see Performance Schema Connection Attribute Tables.

  • Document Store: Connector/NET now has improved support for resetting sessions in connection pools. Returning a session to the pool drops session-related objects such as temporary tables, session variables, and transactions, but the connection remains open and authenticated so that reauthentication is not required when the session is reused.

  • Connector/NET applications now can use certificates in PEM format to validate SSL connections in addition to the native PFX format (see Tutorial: Configuring SSL with Connector/NET). PEM support applies to both classic MySQL protocol and X Protocol connections.

Bugs Fixed

  • Document Store: All methods able to execute a statement were unable to execute the same statement a second time. Now, the values and binding parameters remain available after the method is executed and string parameters are no longer converted to numbers. Both changes enable a follow-on execution to reuse the previous parameters. (Bug #29249857, Bug #29304767)

  • An exception was generated when the MySqlDbType enumeration was given an explicit value and then passed as a parameter to the MySqlCommand.Prepare method. (Bug #28834253, Bug #92912)

  • Validation was added to ensure that when a column is of type TIME and the value is 00:00:00, it takes the value instead of setting NULL. (Bug #28383726, Bug #91752)