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

Side by Side Diff: chrome/browser/predictors/resource_prefetch_predictor_tables.cc

Issue 2420933002: predictors: Add trace events to the resource_prefetch_predictor. (Closed)
Patch Set: . Created 4 years, 2 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/predictors/resource_prefetch_predictor_tables.h" 5 #include "chrome/browser/predictors/resource_prefetch_predictor_tables.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <memory> 10 #include <memory>
11 #include <utility> 11 #include <utility>
12 12
13 #include "base/logging.h" 13 #include "base/logging.h"
14 #include "base/metrics/histogram_macros.h" 14 #include "base/metrics/histogram_macros.h"
15 #include "base/strings/stringprintf.h" 15 #include "base/strings/stringprintf.h"
16 #include "base/trace_event/trace_event.h"
16 #include "content/public/browser/browser_thread.h" 17 #include "content/public/browser/browser_thread.h"
17 #include "sql/meta_table.h" 18 #include "sql/meta_table.h"
18 #include "sql/statement.h" 19 #include "sql/statement.h"
19 #include "sql/transaction.h" 20 #include "sql/transaction.h"
20 21
21 using content::BrowserThread; 22 using content::BrowserThread;
22 using sql::Statement; 23 using sql::Statement;
23 24
24 namespace { 25 namespace {
25 26
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 }); 114 });
114 data->mutable_redirect_endpoints()->erase( 115 data->mutable_redirect_endpoints()->erase(
115 new_end, data->mutable_redirect_endpoints()->end()); 116 new_end, data->mutable_redirect_endpoints()->end());
116 } 117 }
117 118
118 void ResourcePrefetchPredictorTables::GetAllData( 119 void ResourcePrefetchPredictorTables::GetAllData(
119 PrefetchDataMap* url_data_map, 120 PrefetchDataMap* url_data_map,
120 PrefetchDataMap* host_data_map, 121 PrefetchDataMap* host_data_map,
121 RedirectDataMap* url_redirect_data_map, 122 RedirectDataMap* url_redirect_data_map,
122 RedirectDataMap* host_redirect_data_map) { 123 RedirectDataMap* host_redirect_data_map) {
124 TRACE_EVENT0("browser", "ResourcePrefetchPredictor::GetAllData");
123 DCHECK_CURRENTLY_ON(BrowserThread::DB); 125 DCHECK_CURRENTLY_ON(BrowserThread::DB);
124 if (CantAccessDatabase()) 126 if (CantAccessDatabase())
125 return; 127 return;
126 128
127 DCHECK(url_data_map); 129 DCHECK(url_data_map);
128 DCHECK(host_data_map); 130 DCHECK(host_data_map);
129 DCHECK(url_redirect_data_map); 131 DCHECK(url_redirect_data_map);
130 DCHECK(host_redirect_data_map); 132 DCHECK(host_redirect_data_map);
131 url_data_map->clear(); 133 url_data_map->clear();
132 host_data_map->clear(); 134 host_data_map->clear();
133 url_redirect_data_map->clear(); 135 url_redirect_data_map->clear();
134 host_redirect_data_map->clear(); 136 host_redirect_data_map->clear();
135 137
136 GetAllResourceDataHelper(PREFETCH_KEY_TYPE_URL, url_data_map); 138 GetAllResourceDataHelper(PREFETCH_KEY_TYPE_URL, url_data_map);
137 GetAllResourceDataHelper(PREFETCH_KEY_TYPE_HOST, host_data_map); 139 GetAllResourceDataHelper(PREFETCH_KEY_TYPE_HOST, host_data_map);
138 GetAllRedirectDataHelper(PREFETCH_KEY_TYPE_URL, url_redirect_data_map); 140 GetAllRedirectDataHelper(PREFETCH_KEY_TYPE_URL, url_redirect_data_map);
139 GetAllRedirectDataHelper(PREFETCH_KEY_TYPE_HOST, host_redirect_data_map); 141 GetAllRedirectDataHelper(PREFETCH_KEY_TYPE_HOST, host_redirect_data_map);
140 } 142 }
141 143
142 void ResourcePrefetchPredictorTables::UpdateData( 144 void ResourcePrefetchPredictorTables::UpdateData(
143 const PrefetchData& url_data, 145 const PrefetchData& url_data,
144 const PrefetchData& host_data, 146 const PrefetchData& host_data,
145 const RedirectData& url_redirect_data, 147 const RedirectData& url_redirect_data,
146 const RedirectData& host_redirect_data) { 148 const RedirectData& host_redirect_data) {
149 TRACE_EVENT0("browser", "ResourcePrefetchPredictor::UpdateData");
147 DCHECK_CURRENTLY_ON(BrowserThread::DB); 150 DCHECK_CURRENTLY_ON(BrowserThread::DB);
148 if (CantAccessDatabase()) 151 if (CantAccessDatabase())
149 return; 152 return;
150 153
151 DCHECK(url_data.has_primary_key() || host_data.has_primary_key() || 154 DCHECK(url_data.has_primary_key() || host_data.has_primary_key() ||
152 url_redirect_data.has_primary_key() || 155 url_redirect_data.has_primary_key() ||
153 host_redirect_data.has_primary_key()); 156 host_redirect_data.has_primary_key());
154 157
155 DB()->BeginTransaction(); 158 DB()->BeginTransaction();
156 159
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after
495 return is_host ? kHostResourceTableName : kUrlResourceTableName; 498 return is_host ? kHostResourceTableName : kUrlResourceTableName;
496 case PrefetchDataType::REDIRECT: 499 case PrefetchDataType::REDIRECT:
497 return is_host ? kHostRedirectTableName : kUrlRedirectTableName; 500 return is_host ? kHostRedirectTableName : kUrlRedirectTableName;
498 } 501 }
499 502
500 NOTREACHED(); 503 NOTREACHED();
501 return nullptr; 504 return nullptr;
502 } 505 }
503 506
504 } // namespace predictors 507 } // namespace predictors
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698