Skip to content

Commit 609ce09

Browse files
priyankatiwari08Copilotpaulmedynski
authored
Add release notes for MDS v6.1.3 (#3756)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Paul Medynski <31868385+paulmedynski@users.noreply.github.com>
1 parent d90724b commit 609ce09

File tree

4 files changed

+169
-35
lines changed

4 files changed

+169
-35
lines changed

CHANGELOG.md

Lines changed: 60 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -88,31 +88,6 @@ This update brings the following changes since [7.0.0-preview1.25257.1]
8888
- Updated `System.Security.Cryptography.Pkcs` to v9.0.9 (net9)
8989
- Updated `System.Text.Json` to v8.0.6 (net8), v9.0.9 (net9)
9090

91-
## [Stable Release 6.1.2] - 2025-10-07
92-
93-
This update brings the below changes over the previous stable release:
94-
95-
### Fixed
96-
97-
- Fixed an issue where initializing PerformanceCounters would throw `System.InvalidOperationException` [#3629](https://github.com/dotnet/sqlclient/pull/3629)
98-
- Fixed an issue where a Custom SqlClientAuthenticationProvider was being overwritten by default implementation. [#3651](https://github.com/dotnet/SqlClient/pull/3651)
99-
- Fixed a concurrency issue in connection pooling where the number of active connections could be lower than the configured maximum pool size. [#3653](https://github.com/dotnet/SqlClient/pull/3653)
100-
101-
## [Stable release 6.0.3] - 2025-10-07
102-
103-
This update brings the below changes over the previous stable release:
104-
105-
### Fixed
106-
107-
- Fixed an issue where a Custom SqlClientAuthenticationProvider was being overwritten by default implementation. [#3652](https://github.com/dotnet/SqlClient/pull/3652)
108-
- Fixed a concurrency issue in connection pooling where the number of active connections could be lower than the configured maximum pool size. [#3654](https://github.com/dotnet/SqlClient/pull/3654)
109-
110-
### Changed
111-
112-
- Updated MSAL usage as per code compliance requirements [#3360](https://github.com/dotnet/SqlClient/pull/3360)
113-
- Updated `SqlDecimal` implementation to improve code compliance [#3466](https://github.com/dotnet/SqlClient/pull/3466)
114-
- Updated Azure.Identity and related dependencies [#3553](https://github.com/dotnet/SqlClient/pull/3553)
115-
11691
## [Preview Release 7.0.0-preview1.25257.1] - 2025-09-12
11792

11893
This update brings the following changes since the [6.1.0](release-notes/6.1/6.1.0.md)
@@ -175,9 +150,53 @@ release:
175150
- Updated `Azure.Identity` dependency to v1.14.2.
176151
([#3538](https://github.com/dotnet/SqlClient/pull/3538))
177152

153+
## [Stable Release 6.1.3] - 2025-11-12
154+
155+
This update includes the following changes since the [6.1.2](release-notes/6.1/6.1.2.md) release:
156+
157+
### Added
158+
159+
#### App Context Switch for Ignoring Server-Provided Failover Partner
160+
161+
*What Changed:*
162+
163+
- A new app context switch `Switch.Microsoft.Data.SqlClient.IgnoreServerProvidedFailoverPartner` was introduced to let the client ignore server-provided failover partner info in Basic Availability Groups (BAGs). When the switch is enabled, only the failover partner specified in the connection string is used; server-supplied partner values are skipped. This context switch was introduced in PR [#3702](https://github.com/dotnet/SqlClient/pull/3702).
164+
165+
*Who Benefits:*
166+
167+
- Applications connecting to SQL Server BAGs using TCP and custom ports, especially where the server's provided partner name lacks the protocol, host, or port. This avoids connection failures when the server-provided partner is incompatible or incomplete.
168+
- Teams who manage availability groups and rely on client-side control of failover behavior in heterogeneous networking environments.
169+
170+
*Impact:*
171+
172+
- If your environment might be affected (i.e., you operate a BAG with custom ports, or have experienced failures after failover), you can enable the new switch in your application:
173+
174+
```c#
175+
AppContext.SetSwitch("Switch.Microsoft.Data.SqlClient.IgnoreServerProvidedFailoverPartner", true);
176+
```
177+
178+
- Then, ensure your connection string includes your preferred failover partner (with correct `tcp:host,port`) so that the client uses that instead of the server's suggestion.
179+
- Without enabling this, by default, the client continues to prefer the server-provided partner, maintaining backwards compatibility.
180+
181+
### Fixed
182+
183+
- Fixed an issue to ensure reliable metrics initialization during startup,
184+
preventing missed telemetry when EventSource is enabled early.
185+
([#3718](https://github.com/dotnet/SqlClient/pull/3718))
186+
187+
## [Stable Release 6.1.2] - 2025-10-07
188+
189+
This update includes the following changes since the [6.1.1](release-notes/6.1/6.1.1.md) release:
190+
191+
### Fixed
192+
193+
- Fixed an issue where initializing PerformanceCounters would throw `System.InvalidOperationException` [#3629](https://github.com/dotnet/sqlclient/pull/3629)
194+
- Fixed an issue where a Custom SqlClientAuthenticationProvider was being overwritten by default implementation. [#3651](https://github.com/dotnet/SqlClient/pull/3651)
195+
- Fixed a concurrency issue in connection pooling where the number of active connections could be lower than the configured maximum pool size. [#3653](https://github.com/dotnet/SqlClient/pull/3653)
196+
178197
## [Stable Release 6.1.1] - 2025-08-14
179198

180-
This update includes the following changes since the [6.1.0](6.1.0.md) release:
199+
This update includes the following changes since the [6.1.0](release-notes/6.1/6.1.0.md) release:
181200

182201
### Fixed
183202

@@ -440,6 +459,21 @@ This update brings the following changes over the previous release:
440459
- Code merge towards a unified SqlClient project, aligning .NET Framework and .NET Core implementations. ([#2957](https://github.com/dotnet/sqlclient/pull/2957), [#2963](https://github.com/dotnet/sqlclient/pull/2963), [#2984](https://github.com/dotnet/sqlclient/pull/2984), [#2982](https://github.com/dotnet/sqlclient/pull/2982), [#3023](https://github.com/dotnet/sqlclient/pull/3023), [#3015](https://github.com/dotnet/sqlclient/pull/3015), [#2967](https://github.com/dotnet/sqlclient/pull/2967), [#3164](https://github.com/dotnet/sqlclient/pull/3164), [#3163](https://github.com/dotnet/sqlclient/pull/3163), [#3171](https://github.com/dotnet/sqlclient/pull/3171), [#3182](https://github.com/dotnet/sqlclient/pull/3182), [#3179](https://github.com/dotnet/sqlclient/pull/3179), [#3156](https://github.com/dotnet/sqlclient/pull/3156), [#3213](https://github.com/dotnet/sqlclient/pull/3213), [#3232](https://github.com/dotnet/sqlclient/pull/3232), [#3236](https://github.com/dotnet/sqlclient/pull/3236), [#3231](https://github.com/dotnet/sqlclient/pull/3231), [#3241](https://github.com/dotnet/sqlclient/pull/3241), [#3246](https://github.com/dotnet/sqlclient/pull/3246), [#3247](https://github.com/dotnet/sqlclient/pull/3247), [#3222](https://github.com/dotnet/sqlclient/pull/3222), [#3255](https://github.com/dotnet/sqlclient/pull/3255), [#3254](https://github.com/dotnet/sqlclient/pull/3254), [#3259](https://github.com/dotnet/sqlclient/pull/3259), [#3264](https://github.com/dotnet/sqlclient/pull/3264), [#3256](https://github.com/dotnet/sqlclient/pull/3256), [#3251](https://github.com/dotnet/sqlclient/pull/3251), [#3275](https://github.com/dotnet/sqlclient/pull/3275), [#3277](https://github.com/dotnet/sqlclient/pull/3277), [#3263](https://github.com/dotnet/sqlclient/pull/3263), [#3292](https://github.com/dotnet/sqlclient/pull/3292), [#3208](https://github.com/dotnet/sqlclient/pull/3208)).
441460
- Test improvements include updates to test references, removal of hardcoded certificates, improved stability, and better coverage ([#3041](https://github.com/dotnet/sqlclient/pull/3041), [#3034](https://github.com/dotnet/sqlclient/pull/3034), [#3130](https://github.com/dotnet/sqlclient/pull/3130), [#3128](https://github.com/dotnet/sqlclient/pull/3128), [#3181](https://github.com/dotnet/sqlclient/pull/3181), [#3060](https://github.com/dotnet/sqlclient/pull/3060), [#3184](https://github.com/dotnet/sqlclient/pull/3184), [#3033](https://github.com/dotnet/sqlclient/pull/3033), [#3186](https://github.com/dotnet/sqlclient/pull/3186), [#3025](https://github.com/dotnet/sqlclient/pull/3025), [#3230](https://github.com/dotnet/sqlclient/pull/3230), [#3237](https://github.com/dotnet/sqlclient/pull/3237), [#3059](https://github.com/dotnet/sqlclient/pull/3059), [#3061](https://github.com/dotnet/sqlclient/pull/3061)).
442461

462+
## [Stable release 6.0.3] - 2025-10-07
463+
464+
This update brings the below changes over the previous stable release:
465+
466+
### Fixed
467+
468+
- Fixed an issue where a Custom SqlClientAuthenticationProvider was being overwritten by default implementation. [#3652](https://github.com/dotnet/SqlClient/pull/3652)
469+
- Fixed a concurrency issue in connection pooling where the number of active connections could be lower than the configured maximum pool size. [#3654](https://github.com/dotnet/SqlClient/pull/3654)
470+
471+
### Changed
472+
473+
- Updated MSAL usage as per code compliance requirements [#3360](https://github.com/dotnet/SqlClient/pull/3360)
474+
- Updated `SqlDecimal` implementation to improve code compliance [#3466](https://github.com/dotnet/SqlClient/pull/3466)
475+
- Updated Azure.Identity and related dependencies [#3553](https://github.com/dotnet/SqlClient/pull/3553)
476+
443477
## [Stable release 6.0.2] - 2025-04-25
444478

445479
This update brings the below changes over the previous release:

release-notes/6.1/6.1.2.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -50,26 +50,26 @@ This update includes the following changes since the [6.1.1](6.1.1.md) release:
5050

5151
- Azure.Core 1.47.1
5252
- Azure.Identity 1.14.2
53-
- Microsoft.Bcl.Cryptography 9.0.4
53+
- Microsoft.Bcl.Cryptography 9.0.5
5454
- Microsoft.Data.SqlClient.SNI.runtime 6.0.2
55-
- Microsoft.Extensions.Caching.Memory 9.0.4
55+
- Microsoft.Extensions.Caching.Memory 9.0.5
5656
- Microsoft.IdentityModel.JsonWebTokens 7.7.1
5757
- Microsoft.IdentityModel.Protocols.OpenIdConnect 7.7.1
5858
- Microsoft.SqlServer.Server 1.0.0
59-
- System.Configuration.ConfigurationManager 9.0.4
60-
- System.Security.Cryptography.Pkcs 9.0.4
59+
- System.Configuration.ConfigurationManager 9.0.5
60+
- System.Security.Cryptography.Pkcs 9.0.5
6161
- System.Text.Json 9.0.5
6262

6363
#### .NET Standard 2.0
6464

6565
- Azure.Core 1.47.1
6666
- Azure.Identity 1.14.2
67-
- Microsoft.Bcl.Cryptography 9.0.4
67+
- Microsoft.Bcl.Cryptography 8.0.0
6868
- Microsoft.Data.SqlClient.SNI.runtime 6.0.2
69-
- Microsoft.Extensions.Caching.Memory 9.0.4
69+
- Microsoft.Extensions.Caching.Memory 8.0.1
7070
- Microsoft.IdentityModel.JsonWebTokens 7.7.1
7171
- Microsoft.IdentityModel.Protocols.OpenIdConnect 7.7.1
7272
- Microsoft.SqlServer.Server 1.0.0
73-
- System.Configuration.ConfigurationManager 9.0.4
74-
- System.Security.Cryptography.Pkcs 9.0.4
75-
- System.Text.Json 9.0.5
73+
- System.Configuration.ConfigurationManager 8.0.1
74+
- System.Security.Cryptography.Pkcs 8.0.1
75+
- System.Text.Json 8.0.5

release-notes/6.1/6.1.3.md

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
# Release Notes
2+
3+
## Stable Release 6.1.3 - 2025-11-12
4+
5+
This update includes the following changes since the [6.1.2](6.1.2.md) release:
6+
7+
### Added
8+
9+
#### App Context Switch for Ignoring Server-Provided Failover Partner
10+
11+
*What Changed:*
12+
13+
- A new app context switch `Switch.Microsoft.Data.SqlClient.IgnoreServerProvidedFailoverPartner` was introduced to let the client ignore server-provided failover partner info in Basic Availability Groups (BAGs). When the switch is enabled, only the failover partner specified in the connection string is used; server-supplied partner values are skipped. This context switch was introduced in PR [#3702](https://github.com/dotnet/SqlClient/pull/3702).
14+
15+
*Who Benefits:*
16+
17+
- Applications connecting to SQL Server BAGs using TCP and custom ports, especially where the server's provided partner name lacks the protocol, host, or port. This avoids connection failures when the server-provided partner is incompatible or incomplete.
18+
- Teams who manage availability groups and rely on client-side control of failover behavior in heterogeneous networking environments.
19+
20+
*Impact:*
21+
22+
- If your environment might be affected (i.e., you operate a BAG with custom ports, or have experienced failures after failover), you can enable the new switch in your application:
23+
24+
```c#
25+
AppContext.SetSwitch("Switch.Microsoft.Data.SqlClient.IgnoreServerProvidedFailoverPartner", true);
26+
```
27+
28+
- Then, ensure your connection string includes your preferred failover partner (with correct `tcp:host,port`) so that the client uses that instead of the server's suggestion.
29+
- Without enabling this, by default, the client continues to prefer the server-provided partner, maintaining backwards compatibility.
30+
31+
### Fixed
32+
33+
- Fixed an issue to ensure reliable metrics initialization during startup,
34+
preventing missed telemetry when EventSource is enabled early.
35+
([#3718](https://github.com/dotnet/SqlClient/pull/3718))
36+
37+
## Target Platform Support
38+
39+
- .NET Framework 4.6.2+ (Windows ARM64, Windows x86, Windows x64)
40+
- .NET 8.0+ (Windows x86, Windows x64, Windows ARM64, Windows ARM, Linux, macOS)
41+
42+
### Dependencies
43+
44+
#### .NET Framework 4.6.2+
45+
46+
- Azure.Core 1.47.1
47+
- Azure.Identity 1.14.2
48+
- Microsoft.Bcl.Cryptography 8.0.0
49+
- Microsoft.Data.SqlClient.SNI 6.0.2
50+
- Microsoft.Extensions.Caching.Memory 8.0.1
51+
- Microsoft.IdentityModel.JsonWebTokens 7.7.1
52+
- Microsoft.IdentityModel.Protocols.OpenIdConnect 7.7.1
53+
- System.Buffers 4.5.1
54+
- System.Data.Common 4.3.0
55+
- System.Security.Cryptography.Pkcs 8.0.1
56+
- System.Text.Encodings.Web 8.0.0
57+
- System.Text.Json 8.0.5
58+
59+
#### .NET 8.0
60+
61+
- Azure.Core 1.47.1
62+
- Azure.Identity 1.14.2
63+
- Microsoft.Bcl.Cryptography 8.0.0
64+
- Microsoft.Data.SqlClient.SNI.runtime 6.0.2
65+
- Microsoft.Extensions.Caching.Memory 8.0.1
66+
- Microsoft.IdentityModel.JsonWebTokens 7.7.1
67+
- Microsoft.IdentityModel.Protocols.OpenIdConnect 7.7.1
68+
- Microsoft.SqlServer.Server 1.0.0
69+
- System.Configuration.ConfigurationManager 8.0.1
70+
- System.Security.Cryptography.Pkcs 8.0.1
71+
- System.Text.Json 8.0.5
72+
73+
#### .NET 9.0
74+
75+
- Azure.Core 1.47.1
76+
- Azure.Identity 1.14.2
77+
- Microsoft.Bcl.Cryptography 9.0.5
78+
- Microsoft.Data.SqlClient.SNI.runtime 6.0.2
79+
- Microsoft.Extensions.Caching.Memory 9.0.5
80+
- Microsoft.IdentityModel.JsonWebTokens 7.7.1
81+
- Microsoft.IdentityModel.Protocols.OpenIdConnect 7.7.1
82+
- Microsoft.SqlServer.Server 1.0.0
83+
- System.Configuration.ConfigurationManager 9.0.5
84+
- System.Security.Cryptography.Pkcs 9.0.5
85+
- System.Text.Json 9.0.5
86+
87+
#### .NET Standard 2.0
88+
89+
- Azure.Core 1.47.1
90+
- Azure.Identity 1.14.2
91+
- Microsoft.Bcl.Cryptography 8.0.0
92+
- Microsoft.Data.SqlClient.SNI.runtime 6.0.2
93+
- Microsoft.Extensions.Caching.Memory 8.0.1
94+
- Microsoft.IdentityModel.JsonWebTokens 7.7.1
95+
- Microsoft.IdentityModel.Protocols.OpenIdConnect 7.7.1
96+
- Microsoft.SqlServer.Server 1.0.0
97+
- System.Configuration.ConfigurationManager 8.0.1
98+
- System.Security.Cryptography.Pkcs 8.0.1
99+
- System.Text.Json 8.0.5

release-notes/6.1/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ The following Microsoft.Data.SqlClient 6.1 stable releases have been shipped:
44

55
| Release Date | Version | Notes |
66
| :-- | :-- | :--: |
7+
| 2025-11-12 | 6.1.3 | [Release Notes](6.1.3.md) |
78
| 2025-10-07 | 6.1.2 | [Release Notes](6.1.2.md) |
89
| 2025-08-14 | 6.1.1 | [Release Notes](6.1.1.md) |
910
| 2025-07-25 | 6.1.0 | [Release Notes](6.1.0.md) |

0 commit comments

Comments
 (0)