Releases: dotnet/SqlClient
Releases · dotnet/SqlClient
Hotfix & Stable Release v2.1.4
Preview Release v4.0.0-preview1.21237.2
Breaking changes over stable release 3.0.0
- Changed
Encrypt
connection string property to betrue
by default. #1210 - The driver now throws
SqlException
replacingAggregateException
for active directory authentication modes. #1213 - Dropped obsolete
Asynchronous Processing
connection property from .NET Framework. #1148
Added
- Added
SqlCommand.EnableOptimizedParameterBinding
property that when enabled increases performance for commands with very large numbers of parameters. #1041 - Included
42108
and42109
error codes to retriable transient errors list. #1215 - Added new App Context switch to use OS enabled client protocols only. #1168
- Added
PoolBlockingPeriod
connection property support in .NET Standard. #1181 - Added support for
SqlDataReader.GetColumnSchema()
in .NET Standard. #1181 - Added PropertyGrid support with component model annotations to
SqlConnectionStringBuilder
properties for .NET Core. #1152
Fixed
- Fixed issue with connectivity when TLS 1.3 is enabled on client and server. #1168
- Fixed issue with connection encryption to ensure connections fail when encryption is required. #1210
- Fixed issue where connection goes to unusable state. #1128
- Fixed recursive calls to
RetryLogicProvider
when callingSqlCommand.ExecuteScalarAsync
. #1220 - Fixed async deadlock scenarios in web contexts with configurable retry logic provider. #1220
- Fixed
EntryPointNotFoundException
inInOutOfProcHelper
constructor. #1120 - Fixed async thread blocking issues on
SqlConnection.Open()
for active directory authentication modes. #1213 - Fixed driver behavior for Always Encrypted with secure enclaves to not fail when no user parameters have been provided. #1115
- Fixed bug with
LegacyRowVersionNullBehavior
App Context switch. #1182 - Fixed issues in Strings.resx file containing error messages. #1136 #1178
Changed
- Updated error code to match with Windows when certificate validation fails in non-Windows client environments. #1130
- Removed designer attributes from
SqlCommand
andSqlDataAdapter
. #1132 - Updated configurable retry logic default retriable error list. #1125
- Improved performance by changing
SqlParameter
bool fields to flags. #1064 - Improved performance by implementing static delegates. #1060
- Optimized async method allocations in .NET Framework by porting changes from .NET Core. #1084
- Various code improvements #902 #925 #933 #934 #1024 #1057 #1122 #1133 #1134 #1141 #1187 #1188 #1223 #1225 #1226
For detailed release notes, refer 4.0.0-preview1.md
[AzureKeyVaultProvider] Stable Release v3.0.0
Stable Release v3.0.0
Added
- Added support for column encryption key caching when the server supports retrying queries that require enclave computations #1062
- Added support for configurable retry logic configuration file in .NET Standard #1090
Changed
- Updated
Microsoft.Data.SqlClient.SNI
(.NET Framework dependency) andMicrosoft.Data.SqlClient.SNI.runtime
(.NET Core/Standard dependency) version tov3.0.0
#1102 - Improved event counter display information #1091
Breaking Changes
- Modified column encryption key store provider registrations to give built-in system providers precedence over providers registered on connection and command instances. #1101
For summary of all changes over v2.1, refer to 3.0.0.md
Hotfix & Stable Release v2.1.3
Preview Release v3.0.0-preview3.21140.5
Added
- Added support for "Active Directory Default" authentication mode #1043
- Added support for connection-level and command-level registration of custom key store providers to enable multi-tenant applications to control key store access #1045 #1056 #1078
- Added IP address preference support for TCP connections #1015
Fixed
- Fixed corrupted connection issue when an exception occurs during RPC execution with TVP types #1068
- Fixed race condition issues between SinglePhaseCommit and TransactionEnded events #1042
Changed
- Updated error messages for enclave exceptions to include a link to a troubleshooting guide. #994
- Changes to share common files between projects #1022 #1038 #1040 #1033 #1028 #1039
For detailed release notes, refer 3.0.0-preview3.md
Preview Release v3.0.0-preview2.21106.5
Breaking Changes over preview release v3.0.0-preview1
User Id
connection property now requiresClient Id
instead ofObject Id
for User-Assigned Managed Identity #1010SqlDataReader
now returns aDBNull
value instead of an emptybyte[]
. Legacy behavior can be enabled by settingAppContext
switch Switch.Microsoft.Data.SqlClient.LegacyRowVersionNullBehavior #998
Added
- Microsoft.Data.SqlClient now depends on Azure.Identity library to acquire token for "Active Directory Managed Identity/MSI" and "Active Directory Service Principal" authentication modes. #1010
- Upgraded Native SNI dependency to v3.0.0-preview1 along with enhanced event tracing support #1006
Fixed
- Fixed wrong data blended with transactions in .NET Core by marking a connection with open result to be doomed #1023
- Fixed derived parameters containing typename incorrectly #1020
- Fixed server connection leak possibilities when an exception occurs in pooling layer #890
- Fixed IP connection resolving logic in .NET Core #1016 #1031
Changed
- Performance improvements in
SqlDateTime
toDateTime
internal conversion method #912 - Improved memory allocation by avoiding unnecessary context switching 1008
- Updated
Microsoft.Identity.Client
version from 4.21.1 to 4.22.0 #1036 - Various performance improvements #963 #996 #1004 #1012 #1017
- Event source tracing improvements #1018
- Changes to share common files between NetFx and NetCore source code #871 #887
For detailed release notes, refer 3.0.0-preview2.md.
Preview Release v3.0.0-preview1.21075.2
Breaking Changes over stable release v2.1
- The minimum supported .NET Framework version has been increased to v4.6.1. .NET Framework v4.6.0 is no longer supported. #899
Added
- Added support for Configurable Retry Logic #693 #966
- Added support for Event counters in .NET Core 3.1+ and .NET Standard 2.1+ #719
- Added support for Assembly Context Unloading in .NET Core #913
- Added missing
System.Runtime.Caching
dependency for .NET Standard assemblies #877
Fixed
- Fixed wrong results issues by changing the timeout timer to ensure a correct execution state #906
- Fixed Kerberos authentication issues when configured Server Principal Name (SPN) didn't contain default port #930
- Fixed MARS header errors when
MakeReadAsyncBlocking
App Context switch is set tofalse
#910 #922 - Fixed unwanted exceptions being thrown from
SqlDataReader.Dispose
#920 - Fixed issues connecting to SQL Server instance with instance name specified from Unix environment #870
- Fixed TCP Keep Alive issues in .NET Core #854
- Fixed Kerberos Authentication issues caused due to regression #845
- Fixed issues with System-Assigned Managed Identity in Azure Functions #829
- Fixed missing error messages in Managed SNI #882
- Fixed event source trace string issue #940
Changes
- Changed App Context switch
MakeReadAsyncBlocking
default tofalse
#937 - Replaced usage of
BinaryFormatter
withDataContractSerializer
#869 - Prohibited
DtdProcessing
onXmlTextReader
instance in .NET Core #884 - Improved performance by reducing memory allocations in
SerializeEncodingChar
/WriteEncodingChar
and some options boxing #785 - Improved performance by preventing orphaned active packets being GC'ed without clear #888
- Various performance improvements #889 #900
- Partial event source tracing improvements in .NET Core #867 #897
- Changes to share common files between NetFx and NetCore source code #827 #835 #838 #881
For detailed release notes, refer 3.0.0-preview1.md.
Hotfix & Stable Release v1.1.4
Hotfix & Stable Release v2.1.2
Fixed
- Fixed issue connecting with instance name from a Linux/macOS environment #874
- Fixed wrong results issues by changing the timeout timer to ensure a correct execution state #929
- Fixed a vulnerability by prohibiting
DtdProcessing
onXmlTextReader
instances in .NET Core #885 - Fixed Kerberos authentication when an SPN does not contain the port #935
- Fixed missing error messages in Managed SNI #883
- Fixed missing
System.Runtime.Caching
dependency for .NET Standard assemblies #878 - Fixed event source tracing issues #941
- Fixed MARS header contains errors issue against .NET Framework 4.8.1 #928