summaryrefslogtreecommitdiffstats
path: root/net/url_request
diff options
context:
space:
mode:
authorjar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-01-20 18:15:02 +0000
committerjar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-01-20 18:15:02 +0000
commit6a1f7dd457ff97005218fd26dbc0285cf522ab1e (patch)
treedb745db947b4baa1d3763d408bed192b0168b1bb /net/url_request
parentb081172e58ecc67b055b955b1e45ee7ed8e1393b (diff)
downloadchromium_src-6a1f7dd457ff97005218fd26dbc0285cf522ab1e.zip
chromium_src-6a1f7dd457ff97005218fd26dbc0285cf522ab1e.tar.gz
chromium_src-6a1f7dd457ff97005218fd26dbc0285cf522ab1e.tar.bz2
Improve SDCH stability stats and error recovery
This CL provides an exponential back-off (within a run of chromium) for recovery to a decoding error, rather than an full disable of SDCH when a (minor) error appears. This will help to recover from the common (implementation) problem where a user has an SDCH encoded page as a startup tab, but doesn't still have the requisite dictionary from the previous run. The exponential backoff is not "time based," but instead counts down the number of times a tentatively blacklisted domain is accessed. I now detect the use of the browser cache in an SDCH decode, and use that to better identify if external proxies have corrupted the process, vs internal use of cache (such as at startup) has caused a "dictionary not found" error to emerge. r=openvcdiff,huanr Review URL: http://codereview.chromium.org/18355 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8290 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/url_request')
-rw-r--r--net/url_request/url_request_job.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/url_request/url_request_job.cc b/net/url_request/url_request_job.cc
index c30388f..6e6a1df 100644
--- a/net/url_request/url_request_job.cc
+++ b/net/url_request/url_request_job.cc
@@ -61,8 +61,8 @@ void URLRequestJob::SetupFilter() {
// Approximate connect time with request_time. If it is not cached, then
// this is a good approximation for when the first bytes went on the
// wire.
- if (!request_->response_info_.was_cached)
- filter_->SetConnectTime(request_->response_info_.request_time);
+ filter_->SetConnectTime(request_->response_info_.request_time,
+ request_->response_info_.was_cached);
}
}
}