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

Issue 2896713003: Create LoadingDataCollector class and have observers rely on it instead of ResourcePrefetchPredictor (Closed)

Created:
3 years, 7 months ago by trevordixon
Modified:
3 years, 6 months ago
CC:
cbentzel+watch_chromium.org, chromium-reviews, csharrison+watch_chromium.org, loading-reviews+metrics_chromium.org, net-reviews_chromium.org, speed-metrics-reviews_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

predictors: Create LoadingDataCollector class and have observers rely on it instead of ResourcePrefetchPredictor. Part of a refactoring effort to split ResourcePrefetchPredictor. BUG=715525 Review-Url: https://codereview.chromium.org/2896713003 Cr-Commit-Position: refs/heads/master@{#478254} Committed: https://chromium.googlesource.com/chromium/src/+/3eb67a8404b818203d0498faf86438681c4a6c97

Patch Set 1 #

Total comments: 26

Patch Set 2 : Address alexilin comments. #

Total comments: 6

Patch Set 3 : Change name to LoadingDataCollector; address other comments.i #

Patch Set 4 : Move some logic into new class. #

Total comments: 5

Patch Set 5 : resource_prefetch_predictor_observer -> loading_predictor_observer #

Patch Set 6 : Rebase #

Patch Set 7 : Tests + rebase #

Total comments: 27

Patch Set 8 : Remove unnecessary includes from loading_data_collector_unittest.cc #

Patch Set 9 : Rename resource_prefetch_predictor_test_util to loading_test_util. #

Patch Set 10 : Address lizeb feedback. #

Total comments: 4

Patch Set 11 : Move CreateURLRequest to loading_test_util #

Patch Set 12 : Reset MockURLRequestJobFactory #

Total comments: 7

Patch Set 13 : Rebase, merge loading_stats_collector. #

Total comments: 6

Patch Set 14 : Fix nits. #

Patch Set 15 : Address alexilin comments. #

Patch Set 16 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+747 lines, -1318 lines) Patch
M chrome/browser/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +4 lines, -2 lines 0 comments Download
M chrome/browser/net/loading_predictor_observer.cc View 1 2 3 4 5 6 7 8 9 10 11 7 chunks +9 lines, -11 lines 0 comments Download
A + chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +14 lines, -10 lines 0 comments Download
A + chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +20 lines, -17 lines 0 comments Download
A + chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 5 chunks +10 lines, -7 lines 0 comments Download
M chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +0 lines, -65 lines 0 comments Download
M chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +0 lines, -98 lines 0 comments Download
M chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +0 lines, -90 lines 0 comments Download
M chrome/browser/page_load_metrics/page_load_metrics_initialize.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +8 lines, -5 lines 0 comments Download
A chrome/browser/predictors/loading_data_collector.h View 1 2 3 4 5 6 7 8 9 1 chunk +77 lines, -0 lines 0 comments Download
A chrome/browser/predictors/loading_data_collector.cc View 1 2 3 4 5 6 7 8 9 1 chunk +144 lines, -0 lines 0 comments Download
A chrome/browser/predictors/loading_data_collector_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +230 lines, -0 lines 0 comments Download
M chrome/browser/predictors/loading_predictor.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +4 lines, -1 line 0 comments Download
M chrome/browser/predictors/loading_predictor.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +9 lines, -3 lines 0 comments Download
M chrome/browser/predictors/loading_predictor_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/predictors/loading_stats_collector_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -1 line 0 comments Download
A + chrome/browser/predictors/loading_test_util.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +72 lines, -3 lines 0 comments Download
A + chrome/browser/predictors/loading_test_util.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +93 lines, -1 line 0 comments Download
M chrome/browser/predictors/resource_prefetch_predictor.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 7 chunks +20 lines, -39 lines 0 comments Download
M chrome/browser/predictors/resource_prefetch_predictor.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +0 lines, -95 lines 0 comments Download
M chrome/browser/predictors/resource_prefetch_predictor_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +4 lines, -3 lines 0 comments Download
M chrome/browser/predictors/resource_prefetch_predictor_tab_helper.cc View 1 2 2 chunks +4 lines, -6 lines 0 comments Download
M chrome/browser/predictors/resource_prefetch_predictor_tables_unittest.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
D chrome/browser/predictors/resource_prefetch_predictor_test_util.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +0 lines, -144 lines 0 comments Download
D chrome/browser/predictors/resource_prefetch_predictor_test_util.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +0 lines, -405 lines 0 comments Download
M chrome/browser/predictors/resource_prefetch_predictor_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 10 chunks +13 lines, -302 lines 0 comments Download
M chrome/browser/predictors/resource_prefetcher_unittest.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M chrome/test/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 3 chunks +6 lines, -5 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +2 lines, -2 lines 0 comments Download

Messages

Total messages: 49 (18 generated)
trevordixon
3 years, 7 months ago (2017-05-22 12:08:43 UTC) #2
alexilin
Thanks Trevor! https://codereview.chromium.org/2896713003/diff/1/chrome/browser/net/resource_prefetch_predictor_observer.h File chrome/browser/net/resource_prefetch_predictor_observer.h (right): https://codereview.chromium.org/2896713003/diff/1/chrome/browser/net/resource_prefetch_predictor_observer.h#newcode13 chrome/browser/net/resource_prefetch_predictor_observer.h:13: #include "chrome/browser/predictors/resource_prefetch_predictor.h" nit: Do we need this ...
3 years, 7 months ago (2017-05-22 13:20:36 UTC) #3
Benoit L
Thanks! A few comments. https://codereview.chromium.org/2896713003/diff/1/chrome/browser/BUILD.gn File chrome/browser/BUILD.gn (right): https://codereview.chromium.org/2896713003/diff/1/chrome/browser/BUILD.gn#newcode973 chrome/browser/BUILD.gn:973: "predictors/glowplug_collector.cc", General comment: since most ...
3 years, 7 months ago (2017-05-22 13:37:16 UTC) #4
trevordixon
https://codereview.chromium.org/2896713003/diff/1/chrome/browser/net/resource_prefetch_predictor_observer.h File chrome/browser/net/resource_prefetch_predictor_observer.h (right): https://codereview.chromium.org/2896713003/diff/1/chrome/browser/net/resource_prefetch_predictor_observer.h#newcode13 chrome/browser/net/resource_prefetch_predictor_observer.h:13: #include "chrome/browser/predictors/resource_prefetch_predictor.h" On 2017/05/22 at 13:20:36, alexilin wrote: > ...
3 years, 7 months ago (2017-05-22 21:29:01 UTC) #5
alexilin
lgtm % lizeb@ comments Thanks! https://codereview.chromium.org/2896713003/diff/1/chrome/browser/predictors/loading_predictor.h File chrome/browser/predictors/loading_predictor.h (right): https://codereview.chromium.org/2896713003/diff/1/chrome/browser/predictors/loading_predictor.h#newcode55 chrome/browser/predictors/loading_predictor.h:55: std::unique_ptr<GlowplugCollector> glowplug_collector_; On 2017/05/22 ...
3 years, 7 months ago (2017-05-23 08:24:37 UTC) #6
pasko
fly by look without understanding details.. pardon for possible inconvenience https://codereview.chromium.org/2896713003/diff/20001/chrome/browser/predictors/glowplug_collector.h File chrome/browser/predictors/glowplug_collector.h (right): https://codereview.chromium.org/2896713003/diff/20001/chrome/browser/predictors/glowplug_collector.h#newcode17 ...
3 years, 7 months ago (2017-05-23 12:24:59 UTC) #8
trevordixon
Left to do: move logic from old class into this new one. https://codereview.chromium.org/2896713003/diff/1/chrome/browser/BUILD.gn File chrome/browser/BUILD.gn ...
3 years, 7 months ago (2017-05-23 13:05:15 UTC) #9
trevordixon
https://codereview.chromium.org/2896713003/diff/1/chrome/browser/predictors/glowplug_collector.cc File chrome/browser/predictors/glowplug_collector.cc (right): https://codereview.chromium.org/2896713003/diff/1/chrome/browser/predictors/glowplug_collector.cc#newcode14 chrome/browser/predictors/glowplug_collector.cc:14: bool GlowplugCollector::ShouldRecordRequest( On 2017/05/22 at 13:37:16, Benoit L wrote: ...
3 years, 7 months ago (2017-05-24 20:39:24 UTC) #10
Benoit L
https://codereview.chromium.org/2896713003/diff/60001/chrome/browser/net/resource_prefetch_predictor_observer.h File chrome/browser/net/resource_prefetch_predictor_observer.h (right): https://codereview.chromium.org/2896713003/diff/60001/chrome/browser/net/resource_prefetch_predictor_observer.h#newcode31 chrome/browser/net/resource_prefetch_predictor_observer.h:31: class ResourcePrefetchPredictorObserver { Can you change this name as ...
3 years, 6 months ago (2017-05-29 08:55:37 UTC) #11
trevordixon
On 2017/05/29 at 08:55:37, lizeb wrote: > https://codereview.chromium.org/2896713003/diff/60001/chrome/browser/net/resource_prefetch_predictor_observer.h > File chrome/browser/net/resource_prefetch_predictor_observer.h (right): > > https://codereview.chromium.org/2896713003/diff/60001/chrome/browser/net/resource_prefetch_predictor_observer.h#newcode31 ...
3 years, 6 months ago (2017-06-02 12:09:48 UTC) #12
trevordixon
https://codereview.chromium.org/2896713003/diff/60001/chrome/browser/net/resource_prefetch_predictor_observer.h File chrome/browser/net/resource_prefetch_predictor_observer.h (right): https://codereview.chromium.org/2896713003/diff/60001/chrome/browser/net/resource_prefetch_predictor_observer.h#newcode31 chrome/browser/net/resource_prefetch_predictor_observer.h:31: class ResourcePrefetchPredictorObserver { On 2017/05/29 at 08:55:36, Benoit L ...
3 years, 6 months ago (2017-06-02 12:10:36 UTC) #13
Benoit L
Thanks, some questions and comments. https://codereview.chromium.org/2896713003/diff/120001/chrome/browser/net/loading_predictor_observer.cc File chrome/browser/net/loading_predictor_observer.cc (right): https://codereview.chromium.org/2896713003/diff/120001/chrome/browser/net/loading_predictor_observer.cc#newcode219 chrome/browser/net/loading_predictor_observer.cc:219: predictor_->resource_prefetch_predictor()->RecordURLRedirect(*summary); Shouldn't this be ...
3 years, 6 months ago (2017-06-02 12:44:00 UTC) #14
trevordixon
One thing not addressed yet: need to move duplicated CreateURLRequest to loading_test_util. https://codereview.chromium.org/2896713003/diff/120001/chrome/browser/net/loading_predictor_observer.cc File chrome/browser/net/loading_predictor_observer.cc ...
3 years, 6 months ago (2017-06-06 13:08:04 UTC) #15
Benoit L
Thanks! Only two really minor comments, should be good to go after the next revision. ...
3 years, 6 months ago (2017-06-06 14:10:56 UTC) #16
trevordixon
https://codereview.chromium.org/2896713003/diff/180001/chrome/browser/net/loading_predictor_observer.cc File chrome/browser/net/loading_predictor_observer.cc (right): https://codereview.chromium.org/2896713003/diff/180001/chrome/browser/net/loading_predictor_observer.cc#newcode24 chrome/browser/net/loading_predictor_observer.cc:24: using predictors::ResourcePrefetchPredictor; On 2017/06/06 at 14:10:55, Benoit L wrote: ...
3 years, 6 months ago (2017-06-07 09:14:27 UTC) #17
Benoit L
Thanks! lgtm % the small comments (the first one is more a question actually). https://codereview.chromium.org/2896713003/diff/220001/chrome/browser/predictors/loading_data_collector_unittest.cc ...
3 years, 6 months ago (2017-06-07 12:01:06 UTC) #22
trevordixon
Thank you! https://codereview.chromium.org/2896713003/diff/220001/chrome/browser/predictors/loading_data_collector_unittest.cc File chrome/browser/predictors/loading_data_collector_unittest.cc (right): https://codereview.chromium.org/2896713003/diff/220001/chrome/browser/predictors/loading_data_collector_unittest.cc#newcode36 chrome/browser/predictors/loading_data_collector_unittest.cc:36: content::TestBrowserThreadBundle thread_bundle_; On 2017/06/07 at 12:01:05, Benoit ...
3 years, 6 months ago (2017-06-07 12:37:15 UTC) #25
alexilin
Still lgtm. I'm leaving some optional comments. https://codereview.chromium.org/2896713003/diff/240001/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc File chrome/browser/page_load_metrics/page_load_metrics_initialize.cc (right): https://codereview.chromium.org/2896713003/diff/240001/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc#newcode128 chrome/browser/page_load_metrics/page_load_metrics_initialize.cc:128: ResourcePrefetchPredictorPageLoadMetricsObserver::CreateIfNeeded( nit: ...
3 years, 6 months ago (2017-06-07 12:37:32 UTC) #26
trevordixon
https://codereview.chromium.org/2896713003/diff/240001/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc File chrome/browser/page_load_metrics/page_load_metrics_initialize.cc (right): https://codereview.chromium.org/2896713003/diff/240001/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc#newcode128 chrome/browser/page_load_metrics/page_load_metrics_initialize.cc:128: ResourcePrefetchPredictorPageLoadMetricsObserver::CreateIfNeeded( On 2017/06/07 at 12:37:31, alexilin wrote: > nit: ...
3 years, 6 months ago (2017-06-07 13:17:55 UTC) #27
trevordixon
To jkarlin and asvitkine for owners' review. jkarlin: chrome/browser/net/loading_predictor_observer.cc chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.cc chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.h chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer_unittest.cc chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer.cc chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer.h chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer_unittest.cc ...
3 years, 6 months ago (2017-06-08 11:48:12 UTC) #31
jkarlin
chrome/browser/net/ and chrome/browser/page_load_metrics/ lgtm
3 years, 6 months ago (2017-06-08 13:17:45 UTC) #32
Alexei Svitkine (slow)
lgtm
3 years, 6 months ago (2017-06-08 14:25:19 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2896713003/280001
3 years, 6 months ago (2017-06-09 04:46:26 UTC) #36
commit-bot: I haz the power
Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds/228648) ios-device-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, ...
3 years, 6 months ago (2017-06-09 04:48:39 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2896713003/300001
3 years, 6 months ago (2017-06-09 11:02:16 UTC) #41
commit-bot: I haz the power
Committed patchset #16 (id:300001) as https://chromium.googlesource.com/chromium/src/+/3eb67a8404b818203d0498faf86438681c4a6c97
3 years, 6 months ago (2017-06-09 12:21:49 UTC) #44
pasko
trevordixon: please respond to unanswered comments in this review. It is the responsibility of the ...
3 years, 6 months ago (2017-06-12 14:06:57 UTC) #45
pasko
On 2017/06/12 14:06:57, pasko wrote: > trevordixon: please respond to unanswered comments in this review. ...
3 years, 6 months ago (2017-06-12 14:08:13 UTC) #46
alexilin
Please, notice, that I've already sent a patch that fixes base::SupportsWeakPtr usage. https://chromium-review.googlesource.com/c/530747/
3 years, 6 months ago (2017-06-12 14:18:35 UTC) #47
trevordixon
https://codereview.chromium.org/2896713003/diff/20001/chrome/browser/predictors/glowplug_collector.h File chrome/browser/predictors/glowplug_collector.h (right): https://codereview.chromium.org/2896713003/diff/20001/chrome/browser/predictors/glowplug_collector.h#newcode17 chrome/browser/predictors/glowplug_collector.h:17: // Records navigation events as reported by various observers ...
3 years, 6 months ago (2017-06-13 11:40:03 UTC) #48
trevordixon
3 years, 6 months ago (2017-06-13 11:41:24 UTC) #49
Message was sent while issue was closed.
On 2017/06/12 at 14:06:57, pasko wrote:
> trevordixon: please respond to unanswered comments in this review. It is the
responsibility of the author of the change to make sure that all comments are
addressed before landing.
> 
> I am seeing these unanswered comments (maybe there are more, I have not
checked):
https://codereview.chromium.org/2896713003/diff/20001/chrome/browser/predicto...
> 
> Sorry for this codereview tool making it super easy to miss comments being
posted. We will have the new tool soon, where missing comments will also be
easy, but in a different way :)

Sorry for missing those comments! I confirmed that all other problems were
addressed (if not responded to; I'll be careful to also respond more thoroughly
in the future).

Powered by Google App Engine
This is Rietveld 408576698