diff options
author | jar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-01-20 18:15:02 +0000 |
---|---|---|
committer | jar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-01-20 18:15:02 +0000 |
commit | 6a1f7dd457ff97005218fd26dbc0285cf522ab1e (patch) | |
tree | db745db947b4baa1d3763d408bed192b0168b1bb /net/url_request | |
parent | b081172e58ecc67b055b955b1e45ee7ed8e1393b (diff) | |
download | chromium_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.cc | 4 |
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); } } } |