- 
Document Store: Connector/NET now supports the NOWAITandSKIP_LOCKEDlocking options introduced in the MySQL 8.0 release series (see SELECT Statement). The following changes were made to the Connector/NET API:- The - LockContentionenumeration (with values- Default=0,- NoWait=1and- SkipLocked=2) was added. The- Defaultenumeration member represents the previous behavior of waiting for the row locks to be released.
- The existing - LockShared()and- LockExclusive()method signatures were modified to include the new- LockContentionparameter. Both methods are members of the- MySqlX.XDevAPI.CRUD.FindStatementand- MySqlX.XDevAPI.Relational.TableSelectStatementclasses.
- 
Usage examples: // Default behavior – waits for the row locks to release LockShared() LockShared(LockContention.Default) LockExclusive() LockExclusive(LockContention.Default) // New – fails if the rows are locked LockShared(LockContention.NoWait) LockExclusive(LockContention.NoWait) // New – succeeds excluding the locked rows from the result LockShared(LockContention.SkipLocked) LockExclusive(LockContention.SkipLocked)
 (WL #11307) 
- 
Document Store: Previously, when documents without an _idattribute were added to a collection, Connector/NET automatically generated IDs for them. Now the server generates the_idattribute, unless a document already contains one. The generated IDs resulting from a document-add operation can be obtained using the newResult.GeneratedIdsproperty, which returns a list.This capability requires a MySQL 8.0 GA server. If the server does not support document ID generation, the document-add operation returns an error indicating that document IDs were missing. Incompatibility: The GeneratedIdsproperty replaces theDocumentIdandDocumentIdsproperties, which are now removed. (WL #11421)
- 
Document Store: Support for the SHA256_MEMORY authentication mechanism was added to enable non-PLAIN insecure connections (without SSL) for user accounts with caching_sha2_password, which is the default authentication plugin introduced in the MySQL 8.0 release series. The changes related to this support include: - New synonyms for the - authconnection string option:- authenticationand- authentication mode(see Options for X Protocol Only).
- A new authentication mode for the - MySqlAuthenticationModeenumeration:- SHA256_MEMORY. In addition, the- Defaultmember now has a new synonym:- Auto=0.
- A new class: - MySql.Data.MySqlClient.Authentication.Sha256MemoryAuthenticationPlugin.
 (WL #11624) 
- 
Support was added for the new caching_sha2_passwordpadding mechanism introduced in the MySQL 8.0 release series. The new padding mechanism is enabled when all of the following conditions apply:- The user account is set with the - caching_sha2_passwordauthentication plugin.
- SSL is disabled explicitly ( - SslMode=none).
- The - AllowPublicKeyRetrievalconnection option is enabled (- AllowPublicKeyRetrieval=true).
 When enabled, the new padding mechanism is used to encode the password during RSA key encryption, which applies the correct padding to match the server. (WL #11618) 
- Attempting to open the MySQL Web Configuration Tool, with Connector/NET and MySQL for Visual Studio prerequisites installed properly, displayed an error message instead of opening the tool. (Bug #27457398, Bug #88544) 
- Connector/NET could not be installed with NuGet packages from Microsoft Visual Studio 2015. (Bug #27251839, Bug #88838) 
- When a decimal column was defined with a scale of zero, such as - DECIMAL(8, 0), the value of the- NumericPrecisionfield returned by the- MySqlDataReader.GetSchemaTablemethod was lower by one. For example, it returned 7 instead of 8 as expected. (Bug #26954812, Bug #88058)
- The data table returned by the - MySqlDataReader.GetSchemaTablemethod had an inaccurate value of zero assigned to the- ColumnSizefield for- LONGTEXTand- LONGBLOBdata types, and also indicated that the- IsLongfield value was- falsewhen it should have returned- true. (Bug #26876592, Bug #87876)
- The - MySqlDataReader.GetSchemaTablemethod returned different column-size values when used with different character sets. (Bug #26876582, Bug #87868)
- Support for making a secure connection to a server configured to use TLSv1.2 was limited by external factors. (Bug #25689154) 
- Connection strings that included TLS/SSL connection parameters in URI type-string format generated an exception instead of making a connection with the X Protocol. (Bug #24510329) 
- Attempting to generate an Entity Framework model from a MySQL 5.7 database using either EF5 or EF6 produced an exception that prevented the operation from generating the expected model. (Bug #22173048, Bug #79163)