-
Notifications
You must be signed in to change notification settings - Fork 4.9k
SqlClient fix managed MARS timeout cancellation #38266
Conversation
…id callback conditions propagating.
src/System.Data.SqlClient/src/System/Data/SqlClient/SNI/SNIPacket.cs
Outdated
Show resolved
Hide resolved
@Wraith2 This PR is being tracked and will be picked up for dotnet/SqlClient. Appreciate your patience for some more time while we come back to review and merge your contributions! 🙏 |
@cheenamalhotra what is the status of this PR? |
/azp run corefx-ci |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run corefx-ci @cheenamalhotra can this be merged now? |
No pipelines are associated with this pull request. |
/azp run corefx-ci |
Azure Pipelines successfully started running 1 pipeline(s). |
@safern why is "corefx-ci (Windows x64_Debug) " not resetting -- is this a dead leg? |
Yes, I believe the name of the leg changed. The hash of the commit would need to be reset, because GitHub stores the state of the bashes based on the head hash, since it didn't change it and there is no new leg overriding that bash by name, it preserves it. You can look at the build for this PR here: https://dev.azure.com/dnceng/public/_build/results?buildId=388002 |
Oh in the case we can just ignore it then. |
Build was successful: https://dev.azure.com/dnceng/public/_build/results?buildId=388002 |
* Add check for completion callback in Mars connection to prevent invalid callback conditions propagating. * address feedback Commit migrated from dotnet/corefx@3d16a2b
fixes dotnet/SqlClient#108
When a disconnection event occurs using the managed sql network interface (unix and uwp) the error is incorrectly propagated to the receive completion callback which causes an assertion in debug mode and possible unknown bad things in release mode which may contribute to the observed instability of the unix version. This PR adds a check for a property on the packet which is only set when the connection is in a correct state for receiving packets.
Third attempt at this fix now with enhanced knowledge from the SQL team so hopefully this one is the last one. Manual and functional tests pass including those re-enabled in this PR.
/cc @afsanehr, @Gary-Zh , @David-Engel and @saurabh500 (whose implementation and knowlege this is based on)