-
Notifications
You must be signed in to change notification settings - Fork 4k
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
THRIFT-2471 #113
Closed
Closed
THRIFT-2471 #113
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
allengeorge
pushed a commit
to allengeorge/thrift
that referenced
this pull request
Jan 1, 2017
Client: compiler general Patch: Dave Watson This closes apache#113 commit 52b99af Author: Dave Watson <davejwatson@fb.com> Date: 2014-04-23T20:05:56Z change cpp.ref to & commit 3f9d31c Author: Dave Watson <davejwatson@fb.com> Date: 2014-04-23T21:50:29Z Recursion depth limit commit 61468e4 Author: Dave Watson <davejwatson@fb.com> Date: 2014-04-25T19:59:18Z shared_ptr for reference type
Sorry, #1195 has nothing to do with this one. I was off by one. |
Jens-G
pushed a commit
to Jens-G/thrift
that referenced
this pull request
Apr 14, 2019
Fixed race condition in PhysicalConnection creation
Jens-G
pushed a commit
to Jens-G/thrift
that referenced
this pull request
Apr 14, 2019
This was an expedition, but here's the history: - There are 2 forks in the connection logic - One for Mono (the DnsEndpoint split, see apache#20 and apache#155) - One for .BeginConnect() and one for ConnectAsync (because netstandard1.x was "async all the things!") - There's a behind-the-scenes fork on completion type, but for actual library consumers (and not tests), it was always .Any, which was effectively .Sync. There was also a critical bug fix in apache#113 that unfortuantely added a lot of complexity here. The maintenance problem is this complexity wasn't even used, as far as I can tell. It was only ever exposed to even be possibly used in the test project. So we had complicated connection logic, only for the sake of testing it. Unless I'm an idiot, which is entirely possible. This commit removes that logic and simplifies things, as a first step that's a unit in itself. It does not fix Mono. There are other issues there, but thanks to WSL I can readily run the test suite under Mono on Linux now. Mono has a littany of other issues which I'll comment on in apache#314. The most important thing here is that we don't regress what was fixed in apache#113, as this doesn't readily show in tests.
Jens-G
pushed a commit
to Jens-G/thrift
that referenced
this pull request
Apr 14, 2019
This was an expedition, but here's the history: - There are 2 forks in the connection logic - One for Mono (the DnsEndpoint split, see apache#20 and apache#155) - One for .BeginConnect() and one for ConnectAsync (because netstandard1.x was "async all the things!") - There's a behind-the-scenes fork on completion type, but for actual library consumers (and not tests), it was always .Any, which was effectively .Sync. There was also a critical bug fix in apache#113 that unfortuantely added a lot of complexity here. The maintenance problem is this complexity wasn't even used, as far as I can tell. It was only ever exposed to even be possibly used in the test project. So we had complicated connection logic, only for the sake of testing it. Unless I'm an idiot, which is entirely possible. This commit removes that logic and simplifies things, as a first step that's a unit in itself. It does not fix Mono. There are other issues there, but thanks to WSL I can readily run the test suite under Mono on Linux now. Mono has a littany of other issues which I'll comment on in apache#314. The most important thing here is that we don't regress what was fixed in apache#113, as this doesn't readily show in tests.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
three changes as discussed in THRIFT-2471: