Chromium Code Reviews
Help | Chromium Project | Gerrit Changes | Sign in
(22)

Issue 2888623011: Fix for HTTP2 request hanging bug. (Closed)

Created:
6 months ago by mmenke
Modified:
6 months ago
Reviewers:
davidben
CC:
chromium-reviews, cbentzel+watch_chromium.org, net-reviews_chromium.org, Bence
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix for HTTP2 request hanging bug. If, when a socket request completed asynchronously, the next socket request in the queue failed synchronously, ClientSocketPoolBase wouldn't continue to try to service other socket requests in the queue. As a result, the socket pools could end up with pending connect requests and free socket slots, but no ConnectJobs would be made to service them, if this happened 6 times in a row to a socket group. This was a relatively obscure issue, until H2 started depending on this path for sharing sessions when different domains map to the same IP. BUG=723748 Review-Url: https://codereview.chromium.org/2888623011 Cr-Commit-Position: refs/heads/master@{#472952} Committed: https://chromium.googlesource.com/chromium/src/+/9d72fe409a214856ec4d9700105b4664bb4c0861

Patch Set 1 #

Total comments: 7

Messages

Total messages: 16 (9 generated)
mmenke
[davidben]: PTAL. Since things are notified of request completion asynchronously, having a loop here shouldn't ...
6 months ago (2017-05-18 20:00:20 UTC) #5
davidben
Okay, I think I understand what's going on? Two questions. https://codereview.chromium.org/2888623011/diff/1/net/socket/client_socket_pool_base.cc File net/socket/client_socket_pool_base.cc (left): https://codereview.chromium.org/2888623011/diff/1/net/socket/client_socket_pool_base.cc#oldcode934 ...
6 months ago (2017-05-18 20:22:51 UTC) #6
mmenke
https://codereview.chromium.org/2888623011/diff/1/net/socket/client_socket_pool_base.cc File net/socket/client_socket_pool_base.cc (left): https://codereview.chromium.org/2888623011/diff/1/net/socket/client_socket_pool_base.cc#oldcode934 net/socket/client_socket_pool_base.cc:934: // the looping we leave it at this. On ...
6 months ago (2017-05-18 20:44:57 UTC) #9
davidben
lgtm https://codereview.chromium.org/2888623011/diff/1/net/socket/client_socket_pool_base.cc File net/socket/client_socket_pool_base.cc (right): https://codereview.chromium.org/2888623011/diff/1/net/socket/client_socket_pool_base.cc#newcode916 net/socket/client_socket_pool_base.cc:916: break; On 2017/05/18 20:44:57, mmenke wrote: > On ...
6 months ago (2017-05-18 20:52:31 UTC) #10
mmenke
https://codereview.chromium.org/2888623011/diff/1/net/socket/client_socket_pool_base.cc File net/socket/client_socket_pool_base.cc (right): https://codereview.chromium.org/2888623011/diff/1/net/socket/client_socket_pool_base.cc#newcode916 net/socket/client_socket_pool_base.cc:916: break; On 2017/05/18 20:52:31, davidben wrote: > On 2017/05/18 ...
6 months ago (2017-05-18 21:00:43 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2888623011/1
6 months ago (2017-05-18 21:05:31 UTC) #13
commit-bot: I haz the power
6 months ago (2017-05-18 22:36:32 UTC) #16
Message was sent while issue was closed.
Committed patchset #1 (id:1) as
https://chromium.googlesource.com/chromium/src/+/9d72fe409a214856ec4d9700105b...

Powered by Google App Engine
This is Rietveld efc10ee0f