Skip to content
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

Fix deadlocks in Retry and FollowRedirect middlewares #5349

Merged
merged 2 commits into from Oct 12, 2021

Conversation

rossabaker
Copy link
Member

These should never allocate a second connection before releasing the first. If they do, we can deadlock trying to allocate a second connection while everybody holds onto their first.

Fixes #5180.

@rossabaker
Copy link
Member Author

The fact we had to invoke both operations of Hotswap suggests to me that this just isn't the right state machine, but this solution seems to work. Maybe I can nerdsnipe @ChristopherDavenport into a better state machine for this purpose.

@rossabaker
Copy link
Member Author

This is a good diff to review with whitespace insignificance.

@rossabaker rossabaker added this to the 0.23.6 milestone Oct 7, 2021
@rossabaker rossabaker merged commit e097d36 into series/0.23 Oct 12, 2021
@rossabaker rossabaker deleted the issue-5180 branch October 12, 2021 17:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant