-
Notifications
You must be signed in to change notification settings - Fork 565
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
Port FullFx fix for SocketConnection sync/async timeout ignore problem. #3994
Port FullFx fix for SocketConnection sync/async timeout ignore problem. #3994
Conversation
StephenBonikowsky
commented
Oct 24, 2019
- Changeset 1615113 in VSTS.
Going into master first then will cherry-pick to release/3.1.0. @dasetser There is a fair amount of difference between the desktop and core versions of SocketConnection.cs so I had to port the changes manually and not all code paths were present. |
@StephenBonikowsky, the reason they are different is because I had to modify the implementation because of two reasons.
Neither of this problems exist today so my preference would be to replace the entire SocketConnection class with the implementation from .NET Framework as there are some compromises with the current implementation, e.g. close timeout only works with a granularity of 1 second. |
@StephenBonikowsky It looks like you ported the fix correctly to the current implementation. However, I agree with Matt that it would be better if we could port the entire file over again if we can get rid of the compromises in the current implementation. |
Sounds good, I'll find Matt's commits and see if reverting them makes sense and then porting the SocketConnection class as it is in the full framework. |
This was not a straight forward port, no copy and paste and just fix formatting issues. There are quite a few things not present in Core that I had to account for. Particularly related to tracing. Please review this carefully. |
src/System.Private.ServiceModel/src/System/ServiceModel/Channels/SocketConnection.cs
Outdated
Show resolved
Hide resolved
src/System.Private.ServiceModel/src/System/ServiceModel/Channels/SocketConnection.cs
Outdated
Show resolved
Hide resolved
src/System.Private.ServiceModel/src/System/ServiceModel/Channels/SocketConnection.cs
Outdated
Show resolved
Hide resolved
src/System.Private.ServiceModel/src/System/ServiceModel/Channels/SocketConnection.cs
Outdated
Show resolved
Hide resolved
src/System.Private.ServiceModel/src/System/ServiceModel/Channels/SocketConnection.cs
Outdated
Show resolved
Hide resolved
Just a couple of small issues around string resources, otherwise LGTM. Fix those SR.Format uses and we can call it good! |
src/System.Private.ServiceModel/src/System/ServiceModel/Channels/SocketConnection.cs
Outdated
Show resolved
Hide resolved
The new tests added with #4000 are failing because the test server hasn't been updated. Will update it manually and then re-run the checks. |
…e problem. * Changeset 1615113 in VSTS.
* There were still many changes that needed to be made to work in Core, too many to name, best just to do a diff. * One big one was the absence of tracing code.
* Reoved SR.Format where not needed. * Added back a comment that was useful. * Use '_socket' instead of the in param 'socket' once '_socket = socket'
4fda1a7
to
de6bf4f
Compare
|
…etconnectionfix Port FullFx fix for SocketConnection sync/async timeout ignore problem.