summaryrefslogtreecommitdiffstats
path: root/content/browser/net
diff options
context:
space:
mode:
authornyquist@chromium.org <nyquist@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-20 05:26:29 +0000
committernyquist@chromium.org <nyquist@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-20 05:26:29 +0000
commit9abe1698b556c9baa5f4dd74adf39b0ae1723e79 (patch)
tree2c0236597a65fb9c1c456a623e522bc35267857d /content/browser/net
parenta4c2f28033151b323fc12f6630a44a8581dc7d8e (diff)
downloadchromium_src-9abe1698b556c9baa5f4dd74adf39b0ae1723e79.zip
chromium_src-9abe1698b556c9baa5f4dd74adf39b0ae1723e79.tar.gz
chromium_src-9abe1698b556c9baa5f4dd74adf39b0ae1723e79.tar.bz2
Add more UMA stats regarding cookie loading time
To investigate an issue with slow loading time for cookies, this adds more UMA stats to see if there is processing time, or SQL load that is slow. BUG=245442 Review URL: https://chromiumcodereview.appspot.com/19604006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212745 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/net')
-rw-r--r--content/browser/net/sqlite_persistent_cookie_store.cc45
1 files changed, 29 insertions, 16 deletions
diff --git a/content/browser/net/sqlite_persistent_cookie_store.cc b/content/browser/net/sqlite_persistent_cookie_store.cc
index 53f203a..c23692d 100644
--- a/content/browser/net/sqlite_persistent_cookie_store.cc
+++ b/content/browser/net/sqlite_persistent_cookie_store.cc
@@ -580,10 +580,10 @@ bool SQLitePersistentCookieStore::Backend::InitializeDatabase() {
}
UMA_HISTOGRAM_CUSTOM_TIMES(
- "Cookie.TimeInitializeDB",
- base::Time::Now() - start,
- base::TimeDelta::FromMilliseconds(1), base::TimeDelta::FromMinutes(1),
- 50);
+ "Cookie.TimeInitializeDB",
+ base::Time::Now() - start,
+ base::TimeDelta::FromMilliseconds(1), base::TimeDelta::FromMinutes(1),
+ 50);
start = base::Time::Now();
@@ -599,27 +599,40 @@ bool SQLitePersistentCookieStore::Backend::InitializeDatabase() {
return false;
}
+ std::vector<std::string> host_keys;
+ while (smt.Step())
+ host_keys.push_back(smt.ColumnString(0));
+
+ UMA_HISTOGRAM_CUSTOM_TIMES(
+ "Cookie.TimeLoadDomains",
+ base::Time::Now() - start,
+ base::TimeDelta::FromMilliseconds(1), base::TimeDelta::FromMinutes(1),
+ 50);
+
+ base::Time start_parse = base::Time::Now();
+
// Build a map of domain keys (always eTLD+1) to domains.
- while (smt.Step()) {
- std::string domain = smt.ColumnString(0);
+ for (size_t idx = 0; idx < host_keys.size(); ++idx) {
+ const std::string& domain = host_keys[idx];
std::string key =
net::registry_controlled_domains::GetDomainAndRegistry(
domain,
net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES);
- std::map<std::string, std::set<std::string> >::iterator it =
- keys_to_load_.find(key);
- if (it == keys_to_load_.end())
- it = keys_to_load_.insert(std::make_pair
- (key, std::set<std::string>())).first;
- it->second.insert(domain);
+ keys_to_load_[key].insert(domain);
}
UMA_HISTOGRAM_CUSTOM_TIMES(
- "Cookie.TimeInitializeDomainMap",
- base::Time::Now() - start,
- base::TimeDelta::FromMilliseconds(1), base::TimeDelta::FromMinutes(1),
- 50);
+ "Cookie.TimeParseDomains",
+ base::Time::Now() - start_parse,
+ base::TimeDelta::FromMilliseconds(1), base::TimeDelta::FromMinutes(1),
+ 50);
+
+ UMA_HISTOGRAM_CUSTOM_TIMES(
+ "Cookie.TimeInitializeDomainMap",
+ base::Time::Now() - start,
+ base::TimeDelta::FromMilliseconds(1), base::TimeDelta::FromMinutes(1),
+ 50);
initialized_ = true;
return true;