Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1326)

Unified Diff: net/http/http_stream_factory_impl_job_controller.cc

Issue 2771263002: Retry upon 421 status code without IP pooling. (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/http/http_stream_factory_impl_job_controller.cc
diff --git a/net/http/http_stream_factory_impl_job_controller.cc b/net/http/http_stream_factory_impl_job_controller.cc
index aa2a95ca1f3621a5c009b9a1b5492b9aa1db78b7..bc2ed474d8cdb353d699fc58daac5d2bd57bde29 100644
--- a/net/http/http_stream_factory_impl_job_controller.cc
+++ b/net/http/http_stream_factory_impl_job_controller.cc
@@ -48,13 +48,15 @@ HttpStreamFactoryImpl::JobController::JobController(
HttpNetworkSession* session,
JobFactory* job_factory,
const HttpRequestInfo& request_info,
- bool is_preconnect)
+ bool is_preconnect,
+ bool enable_ip_based_pooling)
: factory_(factory),
session_(session),
job_factory_(job_factory),
request_(nullptr),
delegate_(delegate),
is_preconnect_(is_preconnect),
+ enable_ip_based_pooling_(enable_ip_based_pooling),
alternative_job_net_error_(OK),
job_bound_(false),
main_job_is_blocked_(false),
@@ -149,7 +151,7 @@ void HttpStreamFactoryImpl::JobController::Preconnect(
main_job_.reset(job_factory_->CreateJob(
this, PRECONNECT, session_, request_info, IDLE, server_ssl_config,
proxy_ssl_config, destination, origin_url, alternative_service,
- session_->net_log()));
+ enable_ip_based_pooling_, session_->net_log()));
main_job_->Preconnect(num_streams);
}
@@ -432,7 +434,7 @@ void HttpStreamFactoryImpl::JobController::OnResolveProxyComplete(
alternative_job_.reset(job_factory_->CreateJob(
this, ALTERNATIVE, session_, request_info, priority, server_ssl_config,
proxy_ssl_config, destination, origin_url, alternative_proxy_server,
- job->net_log().net_log()));
+ enable_ip_based_pooling_, job->net_log().net_log()));
Zhongyi Shi 2017/03/29 03:05:06 This is trying to start a alternative proxy job, j
Bence 2017/03/29 16:46:08 That is correct. In fact, in a follow-up CL, I wi
Zhongyi Shi 2017/03/30 22:33:02 SGTM!
AttachJob(alternative_job_.get());
can_start_alternative_proxy_job_ = false;
@@ -705,7 +707,8 @@ void HttpStreamFactoryImpl::JobController::CreateJobs(
main_job_.reset(job_factory_->CreateJob(
this, MAIN, session_, request_info, priority, server_ssl_config,
- proxy_ssl_config, destination, origin_url, net_log_.net_log()));
+ proxy_ssl_config, destination, origin_url, enable_ip_based_pooling_,
+ net_log_.net_log()));
AttachJob(main_job_.get());
// Create an alternative job if alternative service is set up for this domain.
@@ -726,7 +729,7 @@ void HttpStreamFactoryImpl::JobController::CreateJobs(
alternative_job_.reset(job_factory_->CreateJob(
this, ALTERNATIVE, session_, request_info, priority, server_ssl_config,
proxy_ssl_config, alternative_destination, origin_url,
- alternative_service, net_log_.net_log()));
+ alternative_service, enable_ip_based_pooling_, net_log_.net_log()));
AttachJob(alternative_job_.get());
main_job_is_blocked_ = true;

Powered by Google App Engine
This is Rietveld 408576698