-
Notifications
You must be signed in to change notification settings - Fork 5.3k
[release/6.0] Remove 1024 character limit on ODBC connection strings #73155
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Tagging subscribers to this area: @dotnet/area-infrastructure-libraries Issue DetailsBackport of #73149 DescriptionSystem.Data.Odbc currently validates that connection strings are a most 1024 characters long; this removes that restriction. Customer impactThe 1024-char restriction prevents some ODBC providers from being used in certain scenarios. Specifically, in modern cloud environments, a rotating authentication token is frequently used instead of a password, and it's sometimes quite long. The 1024-char restriction makes it impossible to use System.Data.Odbc in those scenarios.. How foundReported by multiple users, both in #63630 and in internal channels RegressionNo. TestingManual and verified by one customer. RiskVery low - this removes a check in the code, so that long connection strings don't cause an exception to be thrown. Fixes #27474
|
|
Tagging subscribers to this area: @roji, @ajcvickers Issue DetailsBackport of #73149 DescriptionSystem.Data.Odbc currently validates that connection strings are a most 1024 characters long; this removes that restriction. Customer impactThe 1024-char restriction prevents some ODBC providers from being used in certain scenarios. Specifically, in modern cloud environments, a rotating authentication token is frequently used instead of a password, and it's sometimes quite long. The 1024-char restriction makes it impossible to use System.Data.Odbc in those scenarios.. How foundReported by multiple users, both in #63630 and in internal channels RegressionNo. TestingManual and verified by one customer. RiskVery low - this removes a check in the code, so that long connection strings don't cause an exception to be thrown. Fixes #27474
|
I should have asked this on the original PR. Do we have any tests that prove that, i.e. that validate longer strings can actually now be used and there's not some additional blocker this will hit? |
|
@stephentoub I ran tests myself against some of the major providers (SQL Server, SQLite, PostgreSQL, MySQL), setting the "Server" parameter to a huge 1025-char string; after this change they all throw a driver-specific error saying the host could not be found (as expecteD). So this indicates that in general things are working fine. More importantly, I have confirmation from one customer which used a patched version and could successfully connect. |
|
As System.Data.Odbc ships via a package only, you also need to update the project file to increment the Otherwise this fix wouldn't reach customers. |
Fixes dotnet#63630 (cherry picked from commit 8eb5dea)
|
Thanks @ViktorHofer - added the two properties, I can confirm that a System.Data.Odbc.6.0.1.nupkg appears under artifacts/packages/Debug/Shipping after building. |
carlossanlop
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tactics approved.
Correct milestone applied.
CI failures are unrelated to System.Data.
Required OOB package authoring changes included and verified by PR submitter.
Signed off by area owner.
Ready to merge. ![]()
Backport of #73149
Description
System.Data.Odbc currently validates that connection strings are a most 1024 characters long; this removes that restriction.
Customer impact
The 1024-char restriction prevents some ODBC providers from being used in certain scenarios. Specifically, in modern cloud environments, a rotating authentication token is frequently used instead of a password, and it's sometimes quite long. The 1024-char restriction makes it impossible to use System.Data.Odbc in those scenarios..
How found
Reported by multiple users, both in #63630 and in internal channels
Regression
No.
Testing
Manual and verified by one customer.
Risk
Very low - this removes a check in the code, so that long connection strings don't cause an exception to be thrown.
Fixes #63630
/cc @ajcvickers